Forum rules
There are no such things as "stupid" questions. However if you think your question is a bit stupid, then this is the right place for you to post it. Stick to easy to-the-point questions that you feel people can answer fast. For long and complicated questions use the other forums in the support section.
Before you post read
how to get help
. Topics in this forum are automatically closed 6 months after creation.
Hello,
I Installed game X3: Reunion from GOG, game wont start, terminal spits out the following
karuros@karuros-desktop:~/GOG Games/X3 Reunion# ./start.sh
Running X3: Reunion
Language detected: English
./X3R_config: lib/libz.so.1: version `ZLIB_1.2.9' not found (required by /usr/lib/i386-linux-gnu/libpng16.so.16)
I already looked in my /usr/lib folder and I dont have a libz.so1 library, the closest I have is in the /i386-linux-gnu folder and it is called libzstd.so.1
the installation folder of the game does have a lib called libz.so.1 but I am not sure how it is failing
I tried copying the libzstd.so.1 to the game's lib folder and renaming to libz.so.1 to replace the original libz.so.1 file but it did not work, terminal spits out more errors
karuros@karuros-desktop:~/GOG Games/X3 Reunion# ./start.sh
Running X3: Reunion
Language detected: English
./X3R_config: lib/libz.so.1: no version information available (required by /usr/lib/i386-linux-gnu/libgio-2.0.so.0)
./X3R_config: lib/libz.so.1: no version information available (required by /usr/lib/i386-linux-gnu/libpng16.so.16)
./X3R_config: lib/libz.so.1: no version information available (required by /usr/lib/i386-linux-gnu/libpng16.so.16)
./X3R_config: symbol lookup error: /usr/lib/i386-linux-gnu/libpng16.so.16: undefined symbol: inflate
/usr/lib/i386-linux-gnu/libz.so.1
/usr/lib/i386-linux-gnu/libz.so.1.2.11
/usr/lib/x86_64-linux-gnu/libz.so.1
/usr/lib/x86_64-linux-gnu/libz.so.1.2.11
Also can you share
➜ apt list --installed | grep libz
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libz3-4/focal,now 4.8.7-4build1 amd64 [installed,automatic]
libz3-dev/focal,now 4.8.7-4build1 amd64 [installed,automatic]
libzbar0/focal,now 0.23-1.3 amd64 [installed,automatic]
libzen0v5/focal,now 0.4.37-1build1 amd64 [installed,automatic]
libzip5/focal,now 1.5.1-0ubuntu1 amd64 [installed]
libzmq3-dev/focal,now 4.3.2-2ubuntu1 amd64 [installed]
libzmq5/focal,now 4.3.2-2ubuntu1 amd64 [installed]
libzstd-dev/focal-updates,focal-security,now 1.4.4+dfsg-3ubuntu0.1 amd64 [installed]
libzstd1/focal-updates,focal-security,now 1.4.4+dfsg-3ubuntu0.1 amd64 [installed]
libzstd1/focal-updates,focal-security,now 1.4.4+dfsg-3ubuntu0.1 i386 [installed,automatic]
libzvbi-common/focal,focal,now 0.2.35-17 all [installed]
libzvbi0/focal,now 0.2.35-17 amd64 [installed]
libzvbi0/focal,now 0.2.35-17 i386 [installed,automatic]
libzzip-0-13/focal,now 0.13.62-3.2ubuntu1 amd64 [installed,automatic]
This way we might be able to figure out what library you are missing and install its package, maybe.
Also, can you find the binary executable file of your game in the ~/GOG Games/X3 Reunion folder, and share the output of the following command:
ldd your-executable-file
where you replace your-executable-file with the name of the file. (If you don't know which file it is, opening start.sh in a text editor and reading it might give some clues.)
Here is an example of this command from my PC (for a different game's executable of course):
karuros@karuros-desktop:~$ apt list --installed | grep libz
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libzbar0/bionic,now 0.10+doc-10.1build2 amd64 [installed,automatic]
libzen0v5/bionic,now 0.4.37-1 amd64 [installed,automatic]
libzip4/bionic,now 1.1.2-1.1 amd64 [installed]
libzmq5/bionic-updates,bionic-security,now 4.2.5-1ubuntu0.2 amd64 [installed]
libzstd1/bionic-updates,bionic-security,now 1.3.3+dfsg-2ubuntu1.2 amd64 [installed]
libzvbi-common/bionic,bionic,now 0.2.35-13 all [installed]
libzvbi0/bionic,now 0.2.35-13 amd64 [installed]
The start.sh file has the following code
#!/bin/bash
# GOG.com (www.gog.com)
# X3: Reunion
# Initialization
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "${CURRENT_DIR}"
source support/gog_com.shlib
# Game info
GAME_NAME="$(get_gameinfo 1)"
VERSION="$(get_gameinfo 2)"
VERSION_DEV="$(get_gameinfo 3)"
determine_language() {
local GameLanguage="${1}"
echo "Language detected: ${GameLanguage}"
# restore English first
for Each in $(find "${CURRENT_DIR}/languages/English" -type f -printf "%P\n" )
if [ -e "${CURRENT_DIR}/game/${Each}" ]
rm -f "${CURRENT_DIR}/game/${Each}"
ln -s "${CURRENT_DIR}/languages/English/${Each}" "${CURRENT_DIR}/game/${Each}"
# then link the chosen language
for Each in $(find "${CURRENT_DIR}/languages/${GameLanguage}" -type f -printf "%P\n" )
if [ -e "${CURRENT_DIR}/game/${Each}" ]
rm -f "${CURRENT_DIR}/game/${Each}"
ln -s "${CURRENT_DIR}/languages/${GameLanguage}/${Each}" "${CURRENT_DIR}/game/${Each}"
set_language() {
case "$LANG" in
*cs_*)
determine_language "Czech" ;;
*fr_*)
determine_language "French" ;;
*de_*)
determine_language "German" ;;
*it_*)
determine_language "Italian" ;;
*pl_*)
determine_language "Polish" ;;
*ru_*)
determine_language "Russian" ;;
*es_*)
determine_language "Spanish" ;;
*zh_CN*|*zh_SG*)
determine_language "Simplified Chinese" ;;
*zh_TW*|*zh_HK*)
determine_language "Traditional Chinese" ;;
determine_language "English"
# Actions
run_game() {
echo "Running ${GAME_NAME}"
set_language
local bin32_name="X3R_config"
local bin64_name="$bin32_name"
local bin_path32="$CURRENT_DIR/game/"
local bin_path64="$bin_path32"
local lib_path32="$CURRENT_DIR/lib/:$CURRENT_DIR/game/lib/"
local lib_path64="$lib_path32"
execute_game "${bin32_name}" "${bin64_name}" "${bin_path32}" "${bin_path64}" "${lib_path32}" "${lib_path64}"
default() {
run_game
# Options
define_option "-s" "--start" "start ${GAME_NAME}" "run_game" "$@"
# Defaults
standard_options "$@"
this leads me to believe that the binary executable file that you are asking about is the X3R_config file located in "/home/karuros/GOG Games/X3 Reunion/game"
ldd X3R_config
/lib/i386-linux-gnu/libz.so.1
/lib/i386-linux-gnu/libz.so.1.2.11
/lib/x86_64-linux-gnu/libz.so.1
/lib/x86_64-linux-gnu/libz.so.1.2.11
It looks like you need the files to be in /usr/lib/... but for some reason you have them in /lib/...
Let's create links to them in /usr/lib/... and see if that works.
/lib/i386-linux-gnu/libz.so.1
/lib/i386-linux-gnu/libz.so.1.2.11
/lib/x86_64-linux-gnu/libz.so.1
/lib/x86_64-linux-gnu/libz.so.1.2.11
It looks like you need the files to be in /usr/lib/... but for some reason you have them in /lib/...
Let's create links to them in /usr/lib/... and see if that works.
root@karuros-desktop:~/GOG Games/X3 Reunion# ./start.sh
Running X3: Reunion
Language detected: English
./X3R_config: lib/libz.so.1: version `ZLIB_1.2.9' not found (required by /usr/lib/i386-linux-gnu/libpng16.so.16)
I did confirm that your code created the link files in the correct location but it did not help.
local lib_path32="$CURRENT_DIR/lib/:$CURRENT_DIR/game/lib/:/lib/"
Other than that, you might try copying the libz.so.1 file to the lib folder inside the game's directory. That's where it seems to be searching for it.
spamegg wrote: ⤴Fri Mar 11, 2022 6:11 am
What's the version of zlib1g:i386? This is what I have on Mint 20
➜ apt policy zlib1g:i386
zlib1g:i386:
Installed: 1:1.2.11.dfsg-2ubuntu1.2
Candidate: 1:1.2.11.dfsg-2ubuntu1.2
Version table:
*** 1:1.2.11.dfsg-2ubuntu1.2 500
500 http://archive.ubuntu.com/ubuntu focal-updates/main i386 Packages
100 /var/lib/dpkg/status
1:1.2.11.dfsg-2ubuntu1 500
500 http://archive.ubuntu.com/ubuntu focal/main i386 Packages
my terminal spits out almost the same information that it does for you
karuros@karuros-desktop:~$ apt policy zlib1g:i386
zlib1g:i386:
Installed: 1:1.2.11.dfsg-0ubuntu2
Candidate: 1:1.2.11.dfsg-0ubuntu2
Version table:
*** 1:1.2.11.dfsg-0ubuntu2 500
500 http://ubuntu.securedservers.com bionic/main i386 Packages
100 /var/lib/dpkg/status
Also, the there already is a libz.so.1 file in the lib folder in the game's directory