Page 1 of 1

Trine for Linux fails to start with X library error

Posted: Tue Mar 11, 2014 5:18 pm
by elderman
Hello folks,

I've had some trouble getting Trine working on a new computer. I bought my copy from the Humble bundle. Here's my setup: 32-bit Linux Mint Cinnamon 16 running on a 2.5 GHz Haswell processor, NVIDIA GT730M with up-to date proprietary drivers, 1920x1080 screen resolution, plenty of disc space, plenty of memory.

When I start the launcher from the command line (./trine-launcher), I get the following error:

Code: Select all

./trine-launcher32: symbol lookup error: /usr/lib/i386-linux-gnu/libXrandr.so.2: undefined symbol: _XGetRequest


When I start trine-bin directly, the process fails silently.

There's no Trine directory under ~/.frozenbyte

On a previous machine, the game worked without a hitch (or perhaps after removing the zlib file that came with the launcher, can't remember). Although I've found others reporting the same problem, I haven't seen any posted solutions. Can anyone point me toward getting the game running correctly again?

Re: Trine for Linux fails to start with X library error

Posted: Thu Mar 27, 2014 11:28 am
by FB_JussiE
Hello elderman! I'm terribly sorry for the long wait.

Have you tried directly running the game, skipping the launcher?
You can do this from terminal for example by navigating to the directory where Trine was installed and typing
"./trine-bin32"
If you get ALSA error ending in segfault remove libvorbis.so.2 from the lib32 directory.
If you get GLIBC_2.15 not found remove libm.so.6 as well.

You might have to create link to libasound.so.2.0.0 (named as libasound.so.2) to lib32 as well.

I know this isn't optimal solution as the launcher still will not work, but you can configure the game directly from the config files if needed.

Really sorry for the long delay again and hopefully this helps.

Re: Trine for Linux fails to start with X library error

Posted: Mon Mar 31, 2014 8:15 pm
by elderman
It was a long wait, FB_JussiE, but I appreciate the reply. I assume the wait was because I was a first time poster and I got stuck in a spam filter.

As I explained in my initial post, I have what I assume is some sort of X library error about a call to libXrandr.so.2 "undefined symbol: _XGetRequest".

I run most games under bumblebee's "optirun" command, from the terminal, and I have indeed tried to the app directly. This wouldn't be less convenient for me than running the launcher from the terminal, but it results in exactly the same error.

It's been a bit of time since I tried to troubleshoot this game, but I believe this is the error I get after solving the ALSA and GLIBC errors.

The game doesn't get far enough into launch to create a folder under ~/.frozenbyte.

Without knowing more about the game or the library in question, I'm at a loss for what other information to share with you, but would appreciate any help you might be able to give me that specifically addresses the problem I'm encountering. Perhaps there's a debugging mode or 'verbose' command line option that can supply more info?

Re: Trine for Linux fails to start with X library error

Posted: Tue Apr 01, 2014 9:17 am
by FB_JussiE
Hello again!

I went ahead and installed Mint 16 32bit on a VBox and tested this out.
Some of the libraries bundled with Trine are getting bit old and the problem you mentioned has to do with the newer version of X being incompatible with some libraries included. I was able to get the game (and launcher) to launch (can't really test it that well in virtualized machine due to 3D acceleration not properly supporteds) by cleaning up libraries quite heavy handedly.

For convenience here's the command you can run within the Trine directory to do the same cleanup.

Code: Select all

mkdir ./lib32_old && mv ./lib32/{libX11.so.6,libXau.so.6,libXcomposite.so.1,libXcursor.so.1,libXdamage.so.1,libXdmcp.so.6,libXext.so.6,libXfixes.so.3,libXi.so.6,libXinerama.so.1,libXmu.so.6,libXrender.so.1,libXt.so.6,libm.so.6,libopenal.so.1,libstdc++.so.6,libvorbis.so.0,libvorbisfile.so.3,libxcb-render.so.0,libxcb-render-util.so.0,libxcb-xlib.so.0,libxcb.so.1,libz.so.1} ./lib32_old

If you installed the game outside of your home directory you might have to give it super user permissions.
The command just makes lib32_old directory to the game root directory and moves the colliding libraries there (so that system ones are used instead).

Let me know if it helps!

Edit: Fixed typos :)

Re: Trine for Linux fails to start with X library error

Posted: Wed Apr 02, 2014 1:45 pm
by elderman
That did indeed help. The game now seems to run perfectly. To troubleshoot this, did you just remove bundled libraries until you stopped getting errors?

Thank you so much for taking the time to figure this out. I hope other Mint users will benefit from the solution, too.

My partner, not normally a gamer, has ooh-ed and ahh-ed at Trine before. I'm hoping it will serve as a gateway game for us to spend some Sunday evenings playing co-op.

Re: Trine for Linux fails to start with X library error

Posted: Wed Apr 02, 2014 2:13 pm
by FB_JussiE
Glad to hear the game is working!

To troubleshoot this, did you just remove bundled libraries until you stopped getting errors?

Pretty much, tho I started with moving all the X libraries at once since those were the most probable cause of the issue, after that it was lib-by-lib thing :)