You are here

[SOLVED] Linux Binaries

8 posts / 0 new
Last post
[SOLVED] Linux Binaries
Hello !

I'm trying to play to your game, but right know I can't. It looks like that you built you updater binary with glibc-2.15 (wich is Ubuntu's one. So I guess you are targeting ubuntu with your Linux binary).
So the game wont run on most of the distributions yet, as Steam. I tried to do the same work around as steam, picking up their .so for glibc-2.15 and put it in the same folder than your updater. Now your updater do not ask me for any dependency but I get a "Segmentation Fault" without any log.

Here is the console output before I put the .so:
koren@KOREN-DESKTOP:~/Games/BuildAWorld$ ./BAWClient 
./BAWClient: /lib/i386-linux-gnu/i686/cmov/ version `GLIBC_2.15' not found (required by ./BAWClient)
./BAWClient: /lib/i386-linux-gnu/i686/cmov/ version `GLIBC_2.15' not found (required by ./BAWClient)

And this is the output with the libm and libc used by Steam to work:
Irrlicht Engine version 1.8-baw
Linux 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2 x86_64
mkdir: cannot create directory `/home/koren/Games/BuildAWorld/new': File exists
mkdir: cannot create directory `/home/koren/Games/BuildAWorld/log': File exists
mkdir: cannot create directory `/home/koren/Games/BuildAWorld/screenshots': File exists
Irrlicht Engine version 1.8-baw
Linux 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2 x86_64
Using plain X visual
Loaded texture: getupdatedfilespic.png
Segmentation fault

The log directory is empty.

I don't know if you understood everything I tried to say as english is not my native langage.

first off, you're running a 64bit system with 32bit binaries

make sure you have libs for running 32 bit programs on 64 bit linux (ia32 lib or umething like that on ubuntu/debian)

for any lib manipulation, you have to get 32bit versions of them (cant get 64bit steam libs)

These are the dependencies: => (0xb7730000) => /lib/i386-linux-gnu/ (0xb76f7000) => /usr/lib/i386-linux-gnu/ (0xb76f1000) => /usr/lib/i386-linux-gnu/ (0xb7607000) => /lib/i386-linux-gnu/ (0xb75db000) => /lib/i386-linux-gnu/ (0xb75bd000) => /lib/i386-linux-gnu/ (0xb7413000) => /usr/lib/i386-linux-gnu/ (0xb72dd000) => /lib/i386-linux-gnu/ (0xb72d7000)
/lib/ (0xb7731000) => /usr/lib/i386-linux-gnu/ (0xb72c5000) => /usr/lib/i386-linux-gnu/ (0xb72a3000) => /usr/lib/i386-linux-gnu/ (0xb729f000) => /usr/lib/i386-linux-gnu/ (0xb7298000)

those seem to be the dependencies

what can I do about libm and libc  on different distributions?

Thanks for answering.
I used 32 bits steam libraries (steam is not 64 bits), and my system is multi arch.

Thanks a lot for the dependency list, I'll try to put every 32bit lib next to the binary. I'll post on this topic if I have news.

Edit: thanks to your dependency list, I put the file used by Steam next to the binary, and it worked. Game is updating now.

So to sum up:
Put and used by Steam in the directory where the BAWClient is located to make it works. (Tested on Debian 64 bits with multi arch support and Steam installed)
If you don't have Steam installed try with Ubuntu's libraries.

See you ingame

hehehe... I'm compiling my own uber-optimized glibc for the game to use
I was going to do the movie recorder today...

spend 6 hours trying to build glibc!

and still cant build it with Link Time Optimization
Wow I wish you good luck, you sure are motivated :D
Thank you for supporting Linux ! See you ingame 
Well, I cannot start a new topic so I'll post it here, since it's similar problem I have. I have downloaded the game, and after it's extracted the terminal says ./BAWClient not found, even tough it's in the directory. Trying to run the "" resulted the same. I am using Debian 7 64bit. Any ideas?
Not going so well in Debian testing land. (amd64 + fglrx radeon drivers)
At least the GLIBC is correct for it, but the isn't so happy.
Running it straight it simply doesn't find
ln -s /usr/lib/mesa-diverted/i386-linux-gnu/ .
That gets it past the update and past texture loading, but when the main window tries to appear:
"MEMORY EATEN  17   !!!
X Error of failed request:  BadLength (poly request too large or internal Xlib length error)"

also ... Wine hates the msi ("Bad EXE format")
Bit of a none starter really.