Jump to content

Any Linux gurus out there?


Bonxa

Recommended Posts

I tried running/installing on a Linux system at my university but ran into to trouble immediately.

./SpaceVikings: error while loading shared libraries: libaa.so.1: cannot open shared object file: No such file or directory

Exactly what libraries do I need? We do have rather good computers over here with 3D acceleration enabled. There are also hordes of game eager students with no spare time. Would be a blast to try and max out the number of players.

Appreciate any help I can get!

Link to comment
Share on other sites

Hi, Bonxa! Hordes of students sounds simply wonderful. smile.gif

libaa is the "Ascii Art" library. It's broadly available for all of the major distros as RPM, through Yum, Portage, etc. If you want to tell me what Linux distro you're running then I can point you to specific instructions for installing it.

Link to comment
Share on other sites

I have the exact same error message as Bonxa gets. Here's some more information on my machine:

AMD64 running Ubuntu Breezy Badger AMD64.

ascii art library version 1.4p5-28ubuntu3.

slocate says that /usr/lib/libaa.so.1 exists.

mplayer can play movies using ascii art, so I don't think it's the libraries that are bad.

My guess is that for my case, it comes down to the fact that I'm running it in 64-bit mode, when it was probably compiled for 32 bit. I haven't tried running it in 32 bit mode, as I don't have my chroot set up with all the libraries. I'm heading off to class soon, but will be back later today to help trouble shoot things.

Link to comment
Share on other sites

You can use an RPM to install it on Redhat Enterprise. Get the RPM from someplace such as here:

http://dries.ulyssis.org/rpm/packages/aalib/info.html

(or whatever repository you like)

then do something like this to install it:

</font><blockquote>code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">sudo rpm -Uvh ./aalib-1.4.0-0.rc5.4.i386.rpm</pre>

Link to comment
Share on other sites

Okay, so here is the stuff that I have tried doing:

</font><blockquote>code:</font><hr /><pre style="font-size:x-small; font-family: monospace;"> adam@Hopper:~/DropTeam/bin$ LD_LIBRARY_PATH=../bin

adam@Hopper:~/DropTeam/bin$ ldd ./SpaceVikings

linux-gate.so.1 => (0xffffe000)

libvorbisfile.so.3 => not found

libvorbisenc.so.2 => not found

libvorbis.so.0 => not found

libogg.so.0 => not found

libspeex.so.1 => not found

libfreetype.so.6 => /usr/lib32/libfreetype.so.6 (0x55581000)

libDemeter.so => not found

libosgText.so => not found

libosgSim.so => not found

libosgDB.so => not found

libosgUtil.so => not found

libosg.so => not found

libSDL_net-1.2.so.0 => not found

libSDL_image-1.2.so.0 => not found

libSDL-1.2.so.0 => not found

libOpenThreads.so => not found

libGLEW.so.1.3 => not found

libGLU.so.1 => /usr/lib32/libGLU.so.1 (0x555ee000)

libGL.so.1 => /usr/lib32/libGL.so.1 (0x55664000)

libz.so.1 => /usr/lib32/libz.so.1 (0x556e3000)

libm.so.6 => /lib32/tls/libm.so.6 (0x556f7000)

libalut.so.0 => not found

libopenal.so.1 => not found

libpthread.so.0 => /lib32/tls/libpthread.so.0 (0x5571a000)

libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0x5572b000)

libc.so.6 => /lib32/tls/libc.so.6 (0x55736000)

libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0x55864000)

libpng.so.3 => not found

libGLcore.so.1 => /usr/lib32/libGLcore.so.1 (0x55949000)

libnvidia-tls.so.1 => /usr/lib32/libnvidia-tls.so.1 (0x560b2000)

libXext.so.6 => /usr/lib32/libXext.so.6 (0x560b4000)

libX11.so.6 => /usr/lib32/libX11.so.6 (0x560c1000)

libdl.so.2 => /lib32/tls/libdl.so.2 (0x56181000)

/lib/ld-linux.so.2 (0x55555000)

libXau.so.6 => /usr/lib32/libXau.so.6 (0x56185000)

libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0x56188000)</pre>

Link to comment
Share on other sites

You're right that it's not compiled for 64-bit, but our aim is to provide at least the vast majority of dependencies as precompiled binaries in the /lib directory. We hope that, at worst, you might have to install 1 or 2 packages (such as libaa) to get up and running.

To see what's really happening, when you run ldd, this needs to all be on one line, not two separate commands as you did above:

</font><blockquote>code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">LD_LIBRARY_PATH=../lib ldd ./SpaceVikings</pre>

Link to comment
Share on other sites

Hmm, interesting.

In the last round of testing, I didn't mention it, but I did an "echo $LD_LIBRARY_PATH", and it reported ../bin, so I thought everything was okay. Now that I redo it, it shows differently though.

</font><blockquote>code:</font><hr /><pre style="font-size:x-small; font-family: monospace;"> adam@Hopper:~/DropTeam/bin$ LD_LIBRARY_PATH=../lib ldd ./SpaceVikings

linux-gate.so.1 => (0xffffe000)

libvorbisfile.so.3 => ../lib/libvorbisfile.so.3 (0x5556e000)

libvorbisenc.so.2 => ../lib/libvorbisenc.so.2 (0x55575000)

libvorbis.so.0 => ../lib/libvorbis.so.0 (0x55673000)

libogg.so.0 => ../lib/libogg.so.0 (0x5569c000)

libspeex.so.1 => ../lib/libspeex.so.1 (0x556a1000)

libfreetype.so.6 => ../lib/libfreetype.so.6 (0x556b8000)

libDemeter.so => ../lib/libDemeter.so (0x55726000)

libosgText.so => ../lib/libosgText.so (0x55751000)

libosgSim.so => ../lib/libosgSim.so (0x5577d000)

libosgDB.so => ../lib/libosgDB.so (0x557fb000)

libosgUtil.so => ../lib/libosgUtil.so (0x5585e000)

libosg.so => ../lib/libosg.so (0x5596c000)

libSDL_net-1.2.so.0 => ../lib/libSDL_net-1.2.so.0 (0x55b55000)

libSDL_image-1.2.so.0 => ../lib/libSDL_image-1.2.so.0 (0x55b59000)

libSDL-1.2.so.0 => ../lib/libSDL-1.2.so.0 (0x55b71000)

libOpenThreads.so => ../lib/libOpenThreads.so (0x55c06000)

libGLEW.so.1.3 => ../lib/libGLEW.so.1.3 (0x55c0d000)

libGLU.so.1 => /usr/lib32/libGLU.so.1 (0x55c56000)

libGL.so.1 => /usr/lib32/libGL.so.1 (0x55ccc000)

libz.so.1 => /usr/lib32/libz.so.1 (0x55d4b000)

libm.so.6 => /lib32/tls/libm.so.6 (0x55d5f000)

libalut.so.0 => ../lib/libalut.so.0 (0x55d82000)

libopenal.so.1 => ../lib/libopenal.so.1 (0x55d89000)

libpthread.so.0 => /lib32/tls/libpthread.so.0 (0x55dc5000)

libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0x55dd6000)

libc.so.6 => /lib32/tls/libc.so.6 (0x55de1000)

libstdc++.so.6 => ../lib/libstdc++.so.6 (0x55f0f000)

libpng.so.3 => ../lib/libpng.so.3 (0x55fec000)

libdl.so.2 => /lib32/tls/libdl.so.2 (0x5602b000)

libjpeg.so.62 => ../lib/libjpeg.so.62 (0x5602e000)

libX11.so.6 => /usr/lib32/libX11.so.6 (0x5604e000)

libXext.so.6 => /usr/lib32/libXext.so.6 (0x5610f000)

libaa.so.1 => ../lib/libaa.so.1 (0x004c6000)

libXmu.so.6 => /usr/lib32/libXmu.so.6 (0x5611c000)

libXi.so.6 => /usr/lib32/libXi.so.6 (0x56131000)

libGLcore.so.1 => /usr/lib32/libGLcore.so.1 (0x56139000)

libnvidia-tls.so.1 => /usr/lib32/libnvidia-tls.so.1 (0x568a3000)

/lib/ld-linux.so.2 (0x55555000)

libopenal.so.0 => ../lib/libopenal.so.0 (0x568a5000)

libXau.so.6 => /usr/lib32/libXau.so.6 (0x568ea000)

libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0x568ed000)

libslang-utf8.so.1 => not found

libgpm.so.1 => not found

libXt.so.6 => /usr/lib32/libXt.so.6 (0x568f2000)

libSM.so.6 => /usr/lib32/libSM.so.6 (0x56940000)

libICE.so.6 => /usr/lib32/libICE.so.6 (0x56947000) </pre>

Link to comment
Share on other sites

I got it to run by just plopping in the libaa.so.1
Good news, Bonxa. We'll probably include it in the /lib dir ourselves from now on.

The solution for this for Gentoo users is
Thanks, EMIG! Everything else looking OK on gentoo?

I do have a file /lib/libslang.so.1-UTF8 but the naming is a little backwards
Well, Mac, let's try it the brute force way first. Put this in your DropTeam/lib directory and try again:

http://tbgsoftware.com/libslang-utf8.so.1

If that doesn't get us to the next dependency (which looks to be libgpm based on your ldd output, then that should be the last one) then we'll switch to a more analytical approach, smile.gif Your efforts to get it running on a 64-bit system are very helpful and much appreciated!

Link to comment
Share on other sites

Well, thank you, that seems to have got it. I downloaded the libslang, and put it into lib/. I also ended up having to get libgpm.so.1 (which I already had as part of my 32 bit chroot), and dumping that into lib/ as well. Then the game ran fine, playing two rounds.

</font><blockquote>code:</font><hr /><pre style="font-size:x-small; font-family: monospace;"> adam@Hopper:~/DropTeam$ ./runClient.sh

~/DropTeam/bin ~/DropTeam

./runClient.sh: line 3: 30712 Segmentation fault LD_LIBRARY_PATH=$LD_LIBRARY_PATH:../lib/ ./SpaceVikings </pre>

Link to comment
Share on other sites

sh runClient.sh

/pub/DropTeam/bin /pub/DropTeam

./SpaceVikings: error while loading shared libraries: libaa.so.1: cannot open shared object file: No such file or directory

cd lib

mv libSDL-1.2.so.0 libSDL-1.2.so.0.bk

cd ..

sh runClient.sh

tata, so the system wide installed lib will be used which has no libaa dependence

Link to comment
Share on other sites

I was just going to report all clear on our Red Hat machines. Now I get a segmentation fault while in the process of loading the map however.

There has been a server up for close to 4 hours though, seemingly without hickups.

Link to comment
Share on other sites

Originally posted by ClaytoniousRex:

Ja, Kratz. You know what we really ought to do in runClient.sh is this:

</font><blockquote>code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:../lib</pre>

Link to comment
Share on other sites

×
×
  • Create New...