背景

背景

我该如何解决“Portal”的问题?我只使用了 Ubuntu 几天(Ubuntu 14.04)。

AppFramework : Unable to load module vguimatsurface.so!
Unable to load interface VGUI_Surface030 from vguimatsurface.so

答案1

背景


我设法解决了这个问题,并通过安装 Ubuntu 的 i386 版本的库来运行《反恐精英:源》buhman 在 ArchLinux 论坛上提到

解决方案


在终端(Ctrl++ )中运行以下命令:AltT

sudo apt-get install fontconfig:i386 libgtk2.0-0:i386 libxi6:i386 libnss3:i386 libpango1.0-0:i386 libpng3:i386 libasound2:i386 libcairo2:i386 libsdl2-2.0-0:i386 libsdl2-gfx-1.0-0:i386 libgcrypt11:i386

希望能帮助到你。

答案2

我针对 Half-Life2 和 Ubuntu 22.04.1, Jammy 的解决方案:

cd ~/Games/Half-Life_2/
LD_LIBRARY_PATH=bin ldd bin/vguimatsurface.so | grep 'not'

检查缺少哪个库。就我的情况来说:

libpng12.so.0 => not found

我必须从源代码和所需x86版本构建它,我的机器是x86_64。因此,让我们进行交叉编译:

sudo apt-get install gcc-multilib-i686-linux-gnu
sudo apt install zlib1g-dev:i386

mkdir ~/src
cd ~/src
wget https://ppa.launchpadcontent.net/linuxuprising/libpng12/ubuntu/pool/main/libp/libpng/libpng_1.2.54.orig.tar.xz
tar Jxvf libpng_1.2.54.orig.tar.xz
cd libpng-1.2.54/
CC="i686-linux-gnu-gcc" ./configure
make
sudo make install

libpng12库现已安装在/usr/local/lib

运行游戏:

cd ~/Games/Half-Life_2/
LD_LIBRARY_PATH=/usr/local/lib ./hl2.sh

答案3

在 steam 选项中只需输入:

optirun -b primus %command% -windowed -nojoy 

答案4

正如其他答案所示,您需要ia32-libs

对于 Ubuntu 14.04,您需要使用一个小技巧来安装 ia32-libs:

sudo -i
cd /etc/apt/sources.list.d
echo "deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse" > ia32-libs-raring.list
apt-get update
apt-get install ia32-libs

来源:https://stackoverflow.com/a/23194339/3494126

相关内容