Date: Mon, 20 Dec 2004 19:16:49 +0000 From: Stephen Maver <steve@ntropy.net> To: freebsd-questions@freebsd.org Subject: Linux libs missing dependancies Message-ID: <1103570209.41c72521dfa44@www.ihr.gla.ac.uk>
next in thread | raw e-mail | index | archive | help
Dear List, I've installed the linux steam client the other day, /usr/ports/games/linux-steam This theoretically allows you to download and run steam based games, such as Halflife and Counter Strike Source. Related ports installed: linux-steam-1.0 Half Life dedicated server running on steam linux_base-7.1_7 The base set of packages needed in Linux mode # uname -a FreeBSD lupus.ntropy.net 5.3-RELEASE-p2 FreeBSD 5.3-RELEASE-p2 #1: Sun Dec 5 16:11:09 GMT 2004 ... # kldstat Id Refs Address Size Name 1 10 0xc0400000 39dcf8 kernel 2 14 0xc079e000 537f0 acpi.ko 3 1 0xc15e1000 6000 linprocfs.ko 4 1 0xc15ef000 17000 linux.ko I chanced it and used the linux steam client to download the Counter Strike Source files, with no obvious problems. When I try to run the dedicated server it immediately crashes, probably as it should as it is linux specific I'd guess. $ ./srcds_run -console -game cstrike +map de_dust +maxplayers 16 -steamuser <user> -steampass <passwd> ------ Auto detecting CPU Using default binary. Auto-restarting the server on crash ./srcds_i486: error while loading shared libraries: /usr/compat/linux/lib/libm.so.6: ELF file OS ABI invalid Mon Dec 20 17:53:37 GMT 2004: Server restart in 10 seconds ---- # ldd ./srcds_i486 ./srcds_i486: ./srcds_i486: error while loading shared libraries: /lib/libm.so.6: ELF file OS ABI invalid ./srcds_i486: exit status 127 The binary 'srcds_i486' relies on several other files that have missing dependancies. # ldd bin/dedicated_i486.so bin/dedicated_i486.so: libm.so.6 => not found (0x0) libdl.so.2 => not found (0x0) tier0_i486.so (0x0) vstdlib_i486.so (0x0) libc.so.6 => not found (0x0) All of these libs exist in /usr/compat/linux/lib, and, with the linux emulation running, are seen as being in /lib/* if I understand it all correctly. Also, last night I was trying to use ldd, and suicidal symbolic linking, to show the *so files where their libs were. At one point it failed with an error about being unable to use the libraries as they were not freebsd native. Sorry for the lack of the specific error I am unable to recreate it today. So, the questions are: 1) What would cause the error "ELF file OS ABI invalid" on `ldd ./srcds_i486` above ? 2) How would I go about teaching the linux *.so files where their linux libraries are located ? Pointers to docs, or FMs I should have read, are welcome. I had a look through the manual and googled about on the error, but didnt turn up anything that helped. Thanks, Ste
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1103570209.41c72521dfa44>