Hoi, I recently bought the Linux version of X3: Reunion from GOG, but I can't find a way to start it.
My system: Fedora 32, 64-bit version
I went via terminal into the X3 Reunion folder and started it by:
Which gave me:
./X3R_config: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
I looked in the folder
libgtk-x11-2.0.so.0 was there.
Then I thought, oh, I forgot to install the mentioned programs listed on the GOG page.
Requires the following packages to be installed: libc6:i386 libasound2:i386 libasound2-data:i386 libasound2-plugins:i386 libgtk2.0-0:i386 libxml2:i386 and dependencies. This game comes with a 32-bit binary only
Through internet research I think I found the corresponding Fedora programs and installed them:
- glibc-devel.i686, which installed libxcrypt-devel.i686 as dependency
- alsa-lib.i686 (was already installed)
- alsa-plugins-pulseaudio.i686 (because pulseaudio was the only one installed in the 64-bit version I thought that would be the one for this game)
- gtk2.i686, which installed atk.i686, gdk-pixbuf2-modules.i686 and jasper-libs.i686 as dependencies
- libxml2-devel.i686, which installed cmake-filesystem.i686, xz-devel.i686, xz-devel.x86_64 and zlib-devel.i686 as dependencies
Then I tried to start the game again, this time I got:
./X3R_config: lib/libz.so.1: version `ZLIB_1.2.9' not found (required by /lib/libpng16.so.16)
Through some research I came to this site here: https://stackoverflow.com/questions/48306849/lib-x86-64-linux-gnu-libz-so-1-version-zlib-1-2-9-not-found
and tried the second solution:
cd /your_software/../lib/ (the directory containing libz.so.1) mv libz.so.1 libz.so.1.old ln -s /lib/x86_64-linux-gnu/libz.so.1
Because in Fedora is no
lib/x86_64-linux-gnu/ I found out that the corresponding folder should be
So I did:
cd /usr/lib/ sudo mv libz.so.1 libz.so.1.old sudo ln -s /lib64/libz.so.1
Sadly this didn't help.
Recently I had a similar case with the Linux version of Mount & Blade: Warband from GOG, which gave me after start something like this:
error while loading shared libraries: libcurl-gnutls.so.4: cannot open shared object file: No such file or directory
But the solution for Mount & Blade: Warband was:
sudo ln -s /usr/lib64/libcurl.so.4 /usr/lib64/libcurl-gnutls.so.4
And Mount & Blade: Warband started after that normally.
Maybe that helps or will give an additional idea how to get X3: Reunion to start...
If I forgot anything I will add it, I only use Linux for browsing and some office / gaming, so when it comes down to it, I am only a beginner ;)
Thank you in advance.
So, I put the libz.so.1, which I compiled from source like @aphid showed it, into the
~/GOG Games/X3 Reunion/game/lib/ folder, but renamed the previous
then I got:
./start.sh Running X3: Reunion Language detected: English ./X3R_config: symbol lookup error: /lib/libxcb-shm.so.0: undefined symbol: xcb_send_request_with_fds
which lead me to:
where someone had the same issue, but for X3 Terran War.
Well yeah, it's an other game, but the same series, so I thought the following might work:
Solution there was to delete the lib folder in the root folder of the game (that one next to docs, game, start.sh.,...) and keep in the lib folder located in games only with:
libavcodec.so.53 libavformat.so.53 libavutil.so.51 libbz2.so.1.0 libcrypto.so.1.0.0 libGLEW.so.1.13 libswscale.so.2
Of course I saved the
~/GOG Games/X3 Reunion/lib and
~/GOG Games/X3 Reunion/game/lib/ before doing this
which got me:
./start.sh Running X3: Reunion Language detected: English libGL error: No matching fbConfigs or visuals found libGL error: failed to load driver: swrast X Error of failed request: GLXBadContext Major opcode of failed request: 153 (GLX) Minor opcode of failed request: 6 (X_GLXIsDirect) Serial number of failed request: 107 Current serial number in output stream: 106
which lead me with a search for
failed to load driver: swrast to this:
So maybe 32-bit-nvidia-libs might help, or would they conflict with the current 64-bit-libs? X3: Reunion is a 32-bit only game afterall.
Currently installed ones which are 64-bit packages:
akmod-nvidia-340xx kmod-nvidia-340xx-5.11.11-100.fc32.x86_64 kmod-nvidia-340xx-5.11.12-100.fc32.x86_64 kmod-nvidia-340xx-5.11.14-100.fc32.x86_64 nvidia-texture-tools xorg-x11-drv-nvidia-340xx xorg-x11-drv-nvidia-340xx-kmodsrc xorg-x11-drv-nvidia-340xx-libs xorg-x11-drv-nvidia-libs
I would then just install the .i686 ones...
Or would this option be a dead end?
Ok, installed now the 32-bit nvidia libraries and it starts now. Got help from here.
Also found out that it will start when you delete/rename the
~/GOG Games/X3 Reunion/lib folder. And you can keep all files in the
~/GOG Games/X3 Reunion/game/lib/ folder but we had to switch out the libz.so.1 with the previous compiled one.
I will write a detailed answer in the answer section to this now.