Запуск native Half-Life 2 под linux
При запуске Half-Life на движке Source под Ubuntu вылетает ошибка.
$ ./hl1.sh
SDL video target is 'x11'
SDL video target is 'x11'
This system supports the OpenGL extension GL_EXT_framebuffer_object.
This system supports the OpenGL extension GL_EXT_framebuffer_blit.
This system supports the OpenGL extension GL_EXT_framebuffer_multisample.
This system DOES NOT support the OpenGL extension GL_APPLE_fence.
This system DOES NOT support the OpenGL extension GL_NV_fence.
This system supports the OpenGL extension GL_ARB_sync.
This system supports the OpenGL extension GL_EXT_draw_buffers2.
This system DOES NOT support the OpenGL extension GL_EXT_bindable_uniform.
This system DOES NOT support the OpenGL extension GL_APPLE_flush_buffer_range.
This system supports the OpenGL extension GL_ARB_map_buffer_range.
This system supports the OpenGL extension GL_ARB_vertex_buffer_object.
This system supports the OpenGL extension GL_ARB_occlusion_query.
This system DOES NOT support the OpenGL extension GL_APPLE_texture_range.
This system DOES NOT support the OpenGL extension GL_APPLE_client_storage.
This system DOES NOT support the OpenGL extension GL_ARB_uniform_buffer.
This system supports the OpenGL extension GL_ARB_vertex_array_bgra.
This system supports the OpenGL extension GL_EXT_vertex_array_bgra.
This system supports the OpenGL extension GL_ARB_framebuffer_object.
This system DOES NOT support the OpenGL extension GL_GREMEDY_string_marker.
This system supports the OpenGL extension GL_ARB_debug_output.
This system DOES NOT support the OpenGL extension GL_EXT_direct_state_access.
This system DOES NOT support the OpenGL extension GL_NV_bindless_texture.
This system DOES NOT support the OpenGL extension GL_AMD_pinned_memory.
This system supports the OpenGL extension GL_EXT_framebuffer_multisample_blit_scaled.
This system supports the OpenGL extension GL_EXT_texture_sRGB_decode.
This system DOES NOT support the OpenGL extension GL_NVX_gpu_memory_info.
This system DOES NOT support the OpenGL extension GL_ATI_meminfo.
This system supports the OpenGL extension GL_EXT_texture_compression_s3tc.
This system supports the OpenGL extension GL_EXT_texture_compression_dxt1.
This system supports the OpenGL extension GL_ANGLE_texture_compression_dxt3.
This system supports the OpenGL extension GL_ANGLE_texture_compression_dxt5.
This system DOES NOT support the OpenGL extension GLX_EXT_swap_control_tear.
GL_NV_bindless_texture: DISABLED
GL_AMD_pinned_memory: DISABLED
GL_EXT_texture_sRGB_decode: AVAILABLE
AppFramework : Unable to load module vguimatsurface.so!
Unable to load interface VGUI_Surface030 from vguimatsurface.so
Игровые сайты дают решение в виде:
A. В каталоге с игрой выполните:
$ LD_LIBRARY_PATH=bin ldd bin/vguimatsurface.so
и установите недостающие зависимости.
$ LD_LIBRARY_PATH=bin ldd bin/vguimatsurface.so
linux-gate.so.1 => (0xf7745000)
libtier0.so => bin/libtier0.so (0xf7504000)
libvstdlib.so => bin/libvstdlib.so (0xf7419000)
libcef.so => bin/libcef.so (0xf499d000)
libSDL2-2.0.so.0 => bin/libSDL2-2.0.so.0 (0xf48b8000)
libfontconfig.so.1 => /usr/lib/i386-linux-gnu/libfontconfig.so.1 (0xf4852000)
libfreetype.so.6 => /usr/lib/i386-linux-gnu/libfreetype.so.6 (0xf479f000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf4749000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf4744000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf45c4000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf45a7000)
/lib/ld-linux.so.2 (0x565bc000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf43ed000)
librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xf43e4000)
libgtk-x11-2.0.so.0 => not found
libgdk-x11-2.0.so.0 => not found
libpangocairo-1.0.so.0 => not found
libgdk_pixbuf-2.0.so.0 => not found
libcairo.so.2 => /usr/lib/i386-linux-gnu/libcairo.so.2 (0xf42a1000)
libpango-1.0.so.0 => not found
libgobject-2.0.so.0 => /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 (0xf4243000)
libglib-2.0.so.0 => /lib/i386-linux-gnu/libglib-2.0.so.0 (0xf4118000)
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf3fcd000)
libXi.so.6 => /usr/lib/i386-linux-gnu/libXi.so.6 (0xf3fba000)
libasound.so.2 => /usr/lib/i386-linux-gnu/libasound.so.2 (0xf3e9c000)
libXrender.so.1 => /usr/lib/i386-linux-gnu/libXrender.so.1 (0xf3e8e000)
libnss3.so => not found
libnssutil3.so => not found
libsmime3.so => not found
libplc4.so => not found
libnspr4.so => not found
libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xf3e73000)
libdbus-1.so.3 => /lib/i386-linux-gnu/libdbus-1.so.3 (0xf3e19000)
libpng12.so.0 => not found
libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf3e04000)
libXfixes.so.3 => /usr/lib/i386-linux-gnu/libXfixes.so.3 (0xf3dfb000)
libcups.so.2 => /usr/lib/i386-linux-gnu/libcups.so.2 (0xf3d6f000)
libgcrypt.so.11 => not found
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf3d51000)
libXcursor.so.1 => /usr/lib/i386-linux-gnu/libXcursor.so.1 (0xf3d46000)
libXinerama.so.1 => /usr/lib/i386-linux-gnu/libXinerama.so.1 (0xf3d42000)
libXrandr.so.2 => /usr/lib/i386-linux-gnu/libXrandr.so.2 (0xf3d35000)
libXss.so.1 => /usr/lib/i386-linux-gnu/libXss.so.1 (0xf3d31000)
libXxf86vm.so.1 => /usr/lib/i386-linux-gnu/libXxf86vm.so.1 (0xf3d2a000)
libexpat.so.1 => /lib/i386-linux-gnu/libexpat.so.1 (0xf3d00000)
libpng16.so.16 => /usr/lib/i386-linux-gnu/libpng16.so.16 (0xf3cc4000)
libpixman-1.so.0 => /usr/lib/i386-linux-gnu/libpixman-1.so.0 (0xf3c14000)
libxcb-shm.so.0 => /usr/lib/i386-linux-gnu/libxcb-shm.so.0 (0xf3c10000)
libxcb-render.so.0 => /usr/lib/i386-linux-gnu/libxcb-render.so.0 (0xf3c05000)
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf3bdf000)
libffi.so.6 => /usr/lib/i386-linux-gnu/libffi.so.6 (0xf3bd6000)
libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xf3b5d000)
libsystemd.so.0 => /lib/i386-linux-gnu/libsystemd.so.0 (0xf3acd000)
libgssapi_krb5.so.2 => /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2 (0xf3a7b000)
libgnutls.so.30 => /usr/lib/i386-linux-gnu/libgnutls.so.30 (0xf38f4000)
libavahi-common.so.3 => /usr/lib/i386-linux-gnu/libavahi-common.so.3 (0xf38e4000)
libavahi-client.so.3 => /usr/lib/i386-linux-gnu/libavahi-client.so.3 (0xf38d0000)
libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf38cc000)
libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf38c5000)
libselinux.so.1 => /lib/i386-linux-gnu/libselinux.so.1 (0xf389b000)
liblzma.so.5 => /lib/i386-linux-gnu/liblzma.so.5 (0xf3873000)
libgcrypt.so.20 => /lib/i386-linux-gnu/libgcrypt.so.20 (0xf37a5000)
libkrb5.so.3 => /usr/lib/i386-linux-gnu/libkrb5.so.3 (0xf36ce000)
libk5crypto.so.3 => /usr/lib/i386-linux-gnu/libk5crypto.so.3 (0xf369d000)
libcom_err.so.2 => /lib/i386-linux-gnu/libcom_err.so.2 (0xf3698000)
libkrb5support.so.0 => /usr/lib/i386-linux-gnu/libkrb5support.so.0 (0xf3689000)
libp11-kit.so.0 => /usr/lib/i386-linux-gnu/libp11-kit.so.0 (0xf3628000)
libidn.so.11 => /lib/i386-linux-gnu/libidn.so.11 (0xf35f4000)
libtasn1.so.6 => /usr/lib/i386-linux-gnu/libtasn1.so.6 (0xf35df000)
libnettle.so.6 => /usr/lib/i386-linux-gnu/libnettle.so.6 (0xf35a3000)
libhogweed.so.4 => /usr/lib/i386-linux-gnu/libhogweed.so.4 (0xf356e000)
libgmp.so.10 => /usr/lib/i386-linux-gnu/libgmp.so.10 (0xf34e2000)
libgpg-error.so.0 => /lib/i386-linux-gnu/libgpg-error.so.0 (0xf34cc000)
libkeyutils.so.1 => /lib/i386-linux-gnu/libkeyutils.so.1 (0xf34c7000)
libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xf34ae000)
Большую часть того что не нашло можно установить следующей командой
$ sudo apt-get install libgtk2.0-0:i386 libsdl2-2.0-0:i386 libsdl2-image-2.0-0:i386 libcurl3:i386 libnss3:i386
В зависимостях видим libpng12.so.0. Но, попробовав обновить данную библиотеку, получаем отказ, тк новая версия уже давно установлена.
Та же поблема и с libgcrypt.so.11
Данные библиотеки вы можете скачать по адресу
$ wget
http://security.ubuntu.com/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1_i386.deb$ sudo dpkg -i libpng12-0_1.2.54-1ubuntu1_i386.deb
$ wget
http://security.ubuntu.com/ubuntu/pool/main/libg/libgcrypt11/libgcrypt11_1.5.3-2ubuntu4_i386.deb$ sudo dpkg -i libpng12-0_1.2.54-1ubuntu1_i386.deb