odin Posted April 23, 2016 Share Posted April 23, 2016 Hi i installed xenonauts from gog, but the game doesn't start because it says ./Xenonauts.bin.x86: error while loading shared libraries: libSDL2-2.0.so.0: cannot open open shared object file: no such file or directory I checked and the library is installed. How can i resolve? Quote Link to comment Share on other sites More sharing options...
noblink Posted April 28, 2016 Share Posted April 28, 2016 Just a guess, but it might be that you've got 64bit lib and Xenonauts needs 32bit. Check with ldd. Quote Link to comment Share on other sites More sharing options...
odin Posted April 30, 2016 Author Share Posted April 30, 2016 Sorry i forgot to mention that my system is x64, so xenonauts need libSDL x86? Quote Link to comment Share on other sites More sharing options...
noblink Posted May 5, 2016 Share Posted May 5, 2016 (edited) ...so xenonauts need libSDL x86? You tell me; as I've said "Check with ldd.". It's simply that the executable name strongly hints at it (also programmers tend to be naturally lazy (as pretty much all humans are) and not do shit properly if they aren't forced to, so given that given that keeping a strong distinction between pointers and intergers in mind, as well as remembering that sizeof long varies, takes some (sometimes significant) effort, chances are the devs didn't bother to do that much and provide only 32bit version of the executable). On Windows, it doesn't matter all that much, but is quite annoying on Linux. Edited May 5, 2016 by noblink Quote Link to comment Share on other sites More sharing options...
odin Posted May 6, 2016 Author Share Posted May 6, 2016 This is the output of "ldd Xenonauts.bin.x86" linux-gate.so.1 => (0xf77ea000)libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf767c000)libXinerama.so.1 => /usr/lib/i386-linux-gnu/libXinerama.so.1 (0xf7678000)libXxf86vm.so.1 => /usr/lib/i386-linux-gnu/libXxf86vm.so.1 (0xf7670000)libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf765b000)libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf7656000)libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7639000)libGL.so.1 => /usr/lib/i386-linux-gnu/mesa/libGL.so.1 (0xf75ca000)libSDL2-2.0.so.0 => not foundlibstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf7452000)libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf73fd000)libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf73e0000)libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf722a000)libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf7203000)/lib/ld-linux.so.2 (0x565b0000)libexpat.so.1 => /lib/i386-linux-gnu/libexpat.so.1 (0xf71da000)libxcb-dri3.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri3.so.0 (0xf71d6000)libxcb-present.so.0 => /usr/lib/i386-linux-gnu/libxcb-present.so.0 (0xf71d2000)libxcb-sync.so.1 => /usr/lib/i386-linux-gnu/libxcb-sync.so.1 (0xf71ca000)libxshmfence.so.1 => /usr/lib/i386-linux-gnu/libxshmfence.so.1 (0xf71c6000)libglapi.so.0 => /usr/lib/i386-linux-gnu/libglapi.so.0 (0xf71aa000)libXdamage.so.1 => /usr/lib/i386-linux-gnu/libXdamage.so.1 (0xf71a6000)libXfixes.so.3 => /usr/lib/i386-linux-gnu/libXfixes.so.3 (0xf719f000)libX11-xcb.so.1 => /usr/lib/i386-linux-gnu/libX11-xcb.so.1 (0xf719c000)libxcb-glx.so.0 => /usr/lib/i386-linux-gnu/libxcb-glx.so.0 (0xf7180000)libxcb-dri2.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri2.so.0 (0xf717a000)libdrm.so.2 => /usr/lib/i386-linux-gnu/libdrm.so.2 (0xf7168000)libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf7164000)libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf715d000) Quote Link to comment Share on other sites More sharing options...
noblink Posted May 6, 2016 Share Posted May 6, 2016 (edited) Well, don't know that distro setup, but I'm almost certain those will be 32bit libs. If you have either 'file' or 'readelf' installed, either should be able to tell if used on one of those paths in the output (in the later case, 'readelf -h' will suffice - in the output 'Class' will either be ELF32 or ELF64). Edited May 6, 2016 by noblink Quote Link to comment Share on other sites More sharing options...
odin Posted May 6, 2016 Author Share Posted May 6, 2016 It uses ELF32 Quote Link to comment Share on other sites More sharing options...
noblink Posted May 6, 2016 Share Posted May 6, 2016 (edited) It uses ELF32 So, they obviously *are* 32bit and a 32bit SDL2 lib is missing. As I've said, I don't know your distro, so you need to ask on its forum on the proper way of installing it. A side note: would be very nice if at some point in the future (not necessarily immediate, but reasonably close) Goldhawk would opensource the engine, same way ID Software eventually opensourced its engines (Doom, Quake, etc.). That does wonders for a game/community longevity. Edited May 6, 2016 by noblink Quote Link to comment Share on other sites More sharing options...
odin Posted May 7, 2016 Author Share Posted May 7, 2016 Solved, now it works! i just do sudo apt-get install libsdl2-2.0:i386 about the engine i doubt that it's possible to opensource it. even Goldhawk doesn't have access to the source. It's explained in the development diary, you can find it in "extra" when you start the game. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.