3

How i can fix this problem with "Portal"? I have only used Ubuntu for a few days (Ubuntu 14.04).

AppFramework : Unable to load module vguimatsurface.so!
Unable to load interface VGUI_Surface030 from vguimatsurface.so
2
  • I not have Steam. I will download game from torrent. And i found fix for my trouble!Go to Settings - Software and Updates - Other Software, click add and write deb http://archive.ubuntu.com/ubuntu/ raring main restricted universe multiverse, for next run terminal and say him "sudo apt-get update and sudo apt-get install ia32-libs"
    – user271751
    Apr 21, 2014 at 22:03
  • The vguimatsurface.so library is located inside the tree of portal. However it requires some 32-bit libraries to run. You can check which libraries are not found with ldd bin/vguimatsurface.so. In my case I needed to install several libraries from source to get the right version. Oct 1, 2021 at 22:50

5 Answers 5

4

Background


I managed to solve this issue and run Counter Strike: Source by installing Ubuntu's i386 versions of libs mentioned on ArchLinux forum by buhman.

Solution


Run following command in Terminal(Ctrl + Alt + T):

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

Hope it helps.

2
  • 1
    That worked to solve the same problem in different Valve's game. Too bad, I can't accept the solution (it is not my question). Oct 24, 2015 at 8:07
  • worked on Ubuntu 14.04 Jul 14, 2017 at 9:06
1

My solution for Half-Life2 and Ubuntu 22.04.1, Jammy:

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

check which library is missing. In my case:

libpng12.so.0 => not found

I had to build this from the source and needed x86 version, my machine is x86_64. So, let's cross compile:

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 library is now installed in /usr/local/lib

To run the game:

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

In steam option just type :

optirun -b primus %command% -windowed -nojoy 
1
  • He didn't even say that he's using optirun or Steam...
    – Daniel
    Oct 5, 2014 at 14:58
0

You just have to install the ia-32libs. To do that on later versions of Ubuntu, just enter the following commands one after the another and you are done!!


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


0

As the other answers indicate, you need ia32-libs.

For Ubuntu 14.04 there is a small trick you need to use to install 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

source: https://stackoverflow.com/a/23194339/3494126

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .