Hi everyone !
I've just purchased Voxatron from the HIB.
As you read, I'm running (L)Ubuntu 11.10 64bits using the Nouveau driver and the game refuses to launch while I already installed the ia32-libs packages.
It sends me back the following message:
/opt/voxatron/vox: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory |
The find /./ 2> /dev/null | grep -i libGL.so.1 command give me back this:
/./usr/lib/i386-linux-gnu/mesa/libGL.so.1.2 /./usr/lib/i386-linux-gnu/mesa/libGL.so.1 /./usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2 /./usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /./usr/lib32/mesa/libGL.so.1.2 /./usr/lib32/mesa/libGL.so.1 |
If anyone have an idea...
Thank you all very much in advance!
What does "ldd /opt/voxatron/vox" produce? It will list all the libraries that it is linked against and which locations that the linker would load them. There you can see which libGL it tries to load.
On my Ubuntu 11.10 AMD64 with Catlyst drivers vox ilinks with libGL.so.1 => /usr/lib32/fglrx/libGL.so.1
I have the same problem.
"ldd /opt/voxatron/vox" gives me
linux-gate.so.1 => (0xf7749000) libSDL-1.2.so.0 => /usr/lib32/libSDL-1.2.so.0 (0xf7690000) libGL.so.1 => not found libc.so.6 => /lib32/libc.so.6 (0xf7515000) libm.so.6 => /lib32/libm.so.6 (0xf74eb000) libdl.so.2 => /lib32/libdl.so.2 (0xf74e6000) libpulse-simple.so.0 => /usr/lib32/libpulse-simple.so.0 (0xf74e1000) libpulse.so.0 => /usr/lib32/libpulse.so.0 (0xf7493000) libpthread.so.0 => /lib32/libpthread.so.0 (0xf7478000) /lib/ld-linux.so.2 (0xf774a000) libpulsecommon-1.0.so => /usr/lib32/libpulsecommon-1.0.so (0xf7412000) libjson.so.0 => /usr/lib32/libjson.so.0 (0xf740a000) libdbus-1.so.3 => /lib32/libdbus-1.so.3 (0xf73c1000) libxcb.so.1 => /usr/lib32/libxcb.so.1 (0xf73a2000) libwrap.so.0 => /lib32/libwrap.so.0 (0xf7398000) libsndfile.so.1 => /usr/lib32/libsndfile.so.1 (0xf7326000) libasyncns.so.0 => /usr/lib32/libasyncns.so.0 (0xf731f000) librt.so.1 => /lib32/librt.so.1 (0xf7316000) libXau.so.6 => /usr/lib32/libXau.so.6 (0xf7312000) libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0xf730b000) libnsl.so.1 => /lib32/libnsl.so.1 (0xf72f1000) libFLAC.so.8 => /usr/lib32/libFLAC.so.8 (0xf72a3000) libvorbisenc.so.2 => /usr/lib32/libvorbisenc.so.2 (0xf712b000) libvorbis.so.0 => /usr/lib32/libvorbis.so.0 (0xf7100000) libogg.so.0 => /usr/lib32/libogg.so.0 (0xf70f8000) libresolv.so.2 => /lib32/libresolv.so.2 (0xf70e0000) |
However, I managed to play the game by doing
sudo ln -s /usr/lib32/libGL.so /opt/voxatron/libGL.so.1 |
(Maybe you have to change "/usr/lib32/libGL.so" to another location.)
This works because the vox-run script sets the library path to "/opt/voxatron".
Anyway, this is a bug which should be fixed in the next version of Voxatron.
This is AFAIK not a bug in Voxatron. All Voxatron does is tell the linker that it wants libGL.so and that it wants a 32-bit version. Normally ldd then looks in /usr/lib32 on a 64-bit machine in order to find it.
On my Ubuntu 11.10 there is a symlink from there to where the actual file is stored:
henrik@ubuntu:~$ ls -hl /usr/lib32/libGL.so
lrwxrwxrwx 1 root root 15 2011-10-15 04:06 /usr/lib32/libGL.so -> mesa/libGL.so.1
Perhaps the Nouveau drivers hasn't performed that link on your system?
I'm surprised Voxatron is even using OpenGL, given the radically new/old approach with voxels.
I have the same problem and the solution by Cornelius doesn't work for me. I als get the exact same output as Cornelius after running
sudo ln -s /usr/lib32/libGL.so /opt/voxatron/libGL.so.1 |
any thoughts?
For the record, it is possible to run Voxatron with nouveau drivers. When I do, I get 10 less FPS than with nvidia, but it works and is very playable. My system is Debian Wheezy (testing) 64 bit.
Ardipeth:
Are you absolutely sure your library is in the place you link to ? What's the output of
locate libGL.so |
?
The output of
locate libGL.so |
is:
/opt/voxatron/libGL.so.1 /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2 /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2 /usr/lib32/libGL.so /usr/lib32/libGL.so.1 /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so.1.2 /usr/local/Wolfram/Mathematica/8.0/SystemFiles/Libraries/Linux/Mesa/libGL.so.1 /usr/local/Wolfram/Mathematica/8.0/SystemFiles/Libraries/Linux-x86-64/Mesa/libGL.so.1 |
Thanks for your help by the way.
I'm not an expert on linked libraries, but you seem to be linking to libGL.so instead of libGL.so.1. libGL.so worked in case of Cornellius - I'm not sure why. But in your case the command ldd seems to indicate it's expecting
libGL.so.1 => not found |
Try running the link command with libGL.so.1 instead of libGL.so .
It is nice to see people trying to run the game with noveau. I've set up a wiki page showing the status of the Humble Bundle games (including Voxatron) when running with free drivers: http://indiegamebundle.wikia.com/wiki/List_of_Humble_Bundle_Games_Playable_on_Free_Drivers
Unfortunately the noveau column is empty, since I don't have an Nvidia card. Would someone care to help me fill the gaps?
[Please log in to post a comment]