You are not logged in.
Hi all,
this is kind of a cross post since I am out of ideas how to get it running and don't find anything in the the game forum as well as other sources which looks like a solution.
So this is how starting the game looks without any modifications after a fresh install of ADOM:
$ cd ~/"GOG Games/ADOM Ancient Domains Of Mystery"
$ ./start.sh
Running ADOM (Ancient Domains Of Mystery) (English)
./adom64: error while loading shared libraries: libSDL2_mixer-2.0.so.0: cannot open shared object file: No such file or directory
Thus I
$ export LD_LIBRARY_PATH=./lib64
and installed these packages from AUR:
ncurses5-compat-libs
libsndio-61-compat
nettle6
libjbig-shared
Still no success:
$ ./start.sh
Running ADOM (Ancient Domains Of Mystery) (English)
./adom64: /usr/lib/libncurses.so.5: version `NCURSES_5.0.19991023' not found (required by ./lib64/libnoteye.so)
./adom64: /usr/lib/liblber-2.4.so.2: no version information available (required by ./lib64/libcurl.so.4)
./adom64: /usr/lib/libldap_r-2.4.so.2: no version information available (required by ./lib64/libcurl.so.4)
And this is where I am out of ideas. Does anyone have any suggstions?
Last edited by Moxon (2021-06-27 14:40:17)
Offline
The first issue should be simply fixable by installing sdl2_mixer is that the case?
Offline
Sorry for being verbose on the error messages. The first error message is actually fixed by setting the LD_LIBRARY_PATH correctly since the gog.com provided startup script fails to do so.
Once that is fixed, other libraries are not found. I can install them from AUR but the last error messages about the missing version information are an unsolved puzzle to me
Offline
The first error message is actually fixed by setting the LD_LIBRARY_PATH correctly since
Your "fix" probably causes the other errrors .
You are aware ADOM has a native linux version and there are aur packages for it ?
AUR lists 3 packages for ADOM .
adom and adom-noteye are the same version and their maintainers appear to be active.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
The first error message is actually fixed by setting the LD_LIBRARY_PATH correctly since
Your "fix" probably causes the other errrors .
You are aware ADOM has a native linux version and there are aur packages for it ?
AUR lists 3 packages for ADOM .adom and adom-noteye are the same version and their maintainers appear to be active.
I tried without setting the LD_LIBRARY_PATH and installed sdl2_mixer instead: it lead to the same errors and missing library messages, so no luck here.
I am aware of the adom aur packages, but I they refer to the last freely available version 3.3.3. Still nicely playable and actively maintained in AUR, but I'd just like to play the version I actually bought.
Offline
but I'd just like to play the version I actually bought.
ofcourse, but the aur packages can be useful as examples to see how they start adom .
adom starts the binary directly, adom-noteye uses a wrapper script to cd to the folder where the adom binary resides.
Neither uses LD_LIBRARY_PATH or other tweaks.
please post the contents of start.sh and try running the binary directly .
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
I am not sure if gog.com likes posting the content of their start.sh script ... but apart from loading a shell support library (which comes with ALL gog.com games) it simply calls:
cd "${CURRENT_DIR}/game"
chmod +x *
./"adom64"
which - if called without loading the shell support library - results in the same error as above. This is also the error I get when calling the binary directly:
$ ./adom64
./adom64: error while loading shared libraries: libSDL2_mixer-2.0.so.0: cannot open shared object file: No such file or directory
Last edited by Moxon (2021-06-01 21:23:28)
Offline
libSDL2_mixer-2.0.so.0 is a symlink to the real binary (libSDL2_mixer-2.0.so.0.2.2 for current repo sdl2_mixer ) , let's see if we can find what adom expects it to be.
post the output of
$ lddtree /path/to/game/folder/adom # comes with pax-utils
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
Ok, let's see:
$ cd /path/to/game
$ lddtree adom64
adom64 (interpreter => /lib64/ld-linux-x86-64.so.2)
libnoteye.so => None
libpthread.so.0 => /lib64/libpthread.so.0
libcurl.so.4 => /lib64/libcurl.so.4
libnghttp2.so.14 => /lib64/libnghttp2.so.14
libidn2.so.0 => /lib64/libidn2.so.0
libunistring.so.2 => /lib64/libunistring.so.2
libssh2.so.1 => /lib64/libssh2.so.1
libpsl.so.5 => /lib64/libpsl.so.5
libssl.so.1.1 => /lib64/libssl.so.1.1
libcrypto.so.1.1 => /lib64/libcrypto.so.1.1
libdl.so.2 => /lib64/libdl.so.2
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2
libkrb5.so.3 => /lib64/libkrb5.so.3
libk5crypto.so.3 => /lib64/libk5crypto.so.3
libcom_err.so.2 => /lib64/libcom_err.so.2
libkrb5support.so.0 => /lib64/libkrb5support.so.0
libkeyutils.so.1 => /lib64/libkeyutils.so.1
libresolv.so.2 => /lib64/libresolv.so.2
libzstd.so.1 => /lib64/libzstd.so.1
libz.so.1 => /lib64/libz.so.1
libSDL2-2.0.so.0 => /lib64/libSDL2-2.0.so.0
libm.so.6 => /lib64/libm.so.6
libstdc++.so.6 => /lib64/libstdc++.so.6
libgcc_s.so.1 => /lib64/libgcc_s.so.1
libc.so.6 => /lib64/libc.so.6
Using the libraries provided with the game:
$ export LD_LIBRARY_PATH=`pwd`/lib64
$ lddtree adom64
adom64 (interpreter => /lib64/ld-linux-x86-64.so.2)
libnoteye.so => /path/to/game/lib64/libnoteye.so
libSDL2_image-2.0.so.0 => /path/to/game/lib64/libSDL2_image-2.0.so.0
libpng16.so.16 => /path/to/game/lib64/libpng16.so.16
libjpeg.so.8 => /path/to/game/lib64/libjpeg.so.8
libtiff.so.5 => /path/to/game/lib64/libtiff.so.5
liblzma.so.5 => /lib64/liblzma.so.5
libjbig.so.0 => None
libwebp.so.6 => /path/to/game/lib64/libwebp.so.6
libluajit-5.1.so.2 => /path/to/game/lib64/libluajit-5.1.so.2
libdl.so.2 => /lib64/libdl.so.2
libutil.so.1 => /lib64/libutil.so.1
libSDL2_mixer-2.0.so.0 => /path/to/game/lib64/libSDL2_mixer-2.0.so.0
libmodplug.so.1 => /path/to/game/lib64/libmodplug.so.1
libfluidsynth.so.1 => /path/to/game/lib64/libfluidsynth.so.1
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0
libpcre.so.1 => /lib64/libpcre.so.1
libjack.so.0 => /lib64/libjack.so.0
libcelt0.so.2 => /lib64/libcelt0.so.2
libopus.so.0 => /lib64/libopus.so.0
libdb-5.3.so => /lib64/libdb-5.3.so
librt.so.1 => /lib64/librt.so.1
libasound.so.2 => /lib64/libasound.so.2
libpulse-simple.so.0 => /lib64/libpulse-simple.so.0
libpulse.so.0 => /lib64/libpulse.so.0
libdbus-1.so.3 => /lib64/libdbus-1.so.3
libsystemd.so.0 => /lib64/libsystemd.so.0
libzstd.so.1 => /lib64/libzstd.so.1
liblz4.so.1 => /lib64/liblz4.so.1
libcap.so.2 => /lib64/libcap.so.2
libgcrypt.so.20 => /path/to/game/lib64/libgcrypt.so.20
libgpg-error.so.0 => /lib64/libgpg-error.so.0
libpulsecommon-14.2.so => /usr/lib/pulseaudio/libpulsecommon-14.2.so
libxcb.so.1 => /lib64/libxcb.so.1
libXau.so.6 => /lib64/libXau.so.6
libXdmcp.so.6 => /lib64/libXdmcp.so.6
libasyncns.so.0 => /lib64/libasyncns.so.0
libresolv.so.2 => /lib64/libresolv.so.2
libsndfile.so.1 => /lib64/libsndfile.so.1
libvorbisenc.so.2 => /lib64/libvorbisenc.so.2
libvorbis.so.0 => /path/to/game/lib64/libvorbis.so.0
libogg.so.0 => /path/to/game/lib64/libogg.so.0
libreadline.so.7 => /path/to/game/lib64/libreadline.so.7
libvorbisfile.so.3 => /path/to/game/lib64/libvorbisfile.so.3
libFLAC.so.8 => /path/to/game/lib64/libFLAC.so.8
libmad.so.0 => /path/to/game/lib64/libmad.so.0
libSDL2_net-2.0.so.0 => /path/to/game/lib64/libSDL2_net-2.0.so.0
libGL.so.1 => /lib64/libGL.so.1
libGLdispatch.so.0 => /lib64/libGLdispatch.so.0
libGLX.so.0 => /lib64/libGLX.so.0
libX11.so.6 => /lib64/libX11.so.6
libz.so.1 => /lib64/libz.so.1
libncurses.so.5 => None
libtinfo.so.5 => None
libSDL2_ttf-2.0.so.0 => /path/to/game/lib64/libSDL2_ttf-2.0.so.0
libfreetype.so.6 => /lib64/libfreetype.so.6
libbz2.so.1.0 => /lib64/libbz2.so.1.0
libharfbuzz.so.0 => /lib64/libharfbuzz.so.0
libfreetype.so.6 => !!! circular loop !!!
libgraphite2.so.3 => /lib64/libgraphite2.so.3
libm.so.6 => /lib64/libm.so.6
libgcc_s.so.1 => /lib64/libgcc_s.so.1
libpthread.so.0 => /lib64/libpthread.so.0
libcurl.so.4 => /path/to/game/lib64/libcurl.so.4
libnghttp2.so.14 => /lib64/libnghttp2.so.14
libidn2.so.0 => /lib64/libidn2.so.0
libunistring.so.2 => /lib64/libunistring.so.2
librtmp.so.1 => /path/to/game/lib64/librtmp.so.1
libgnutls.so.30 => /path/to/game/lib64/libgnutls.so.30
libp11-kit.so.0 => /lib64/libp11-kit.so.0
libffi.so.7 => /lib64/libffi.so.7
libtasn1.so.6 => /lib64/libtasn1.so.6
libhogweed.so.4 => None
libnettle.so.6 => None
libgmp.so.10 => /lib64/libgmp.so.10
libpsl.so.5 => /lib64/libpsl.so.5
libssl.so.1.1 => /lib64/libssl.so.1.1
libcrypto.so.1.1 => /lib64/libcrypto.so.1.1
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2
libkrb5.so.3 => /lib64/libkrb5.so.3
libk5crypto.so.3 => /lib64/libk5crypto.so.3
libcom_err.so.2 => /lib64/libcom_err.so.2
libkrb5support.so.0 => /lib64/libkrb5support.so.0
libkeyutils.so.1 => /lib64/libkeyutils.so.1
libldap_r-2.4.so.2 => /lib64/libldap_r-2.4.so.2
libsasl2.so.3 => /lib64/libsasl2.so.3
liblber-2.4.so.2 => /lib64/liblber-2.4.so.2
libSDL2-2.0.so.0 => /path/to/game/lib64/libSDL2-2.0.so.0
libsndio.so.6.1 => None
libXext.so.6 => /lib64/libXext.so.6
libXcursor.so.1 => /lib64/libXcursor.so.1
libXrender.so.1 => /lib64/libXrender.so.1
libXfixes.so.3 => /lib64/libXfixes.so.3
libXinerama.so.1 => /lib64/libXinerama.so.1
libXi.so.6 => /lib64/libXi.so.6
libXrandr.so.2 => /lib64/libXrandr.so.2
libXss.so.1 => /lib64/libXss.so.1
libXxf86vm.so.1 => /lib64/libXxf86vm.so.1
libwayland-egl.so.1 => /lib64/libwayland-egl.so.1
libwayland-client.so.0 => /lib64/libwayland-client.so.0
libwayland-cursor.so.0 => /lib64/libwayland-cursor.so.0
libxkbcommon.so.0 => /lib64/libxkbcommon.so.0
libstdc++.so.6 => /lib64/libstdc++.so.6
BTW: if I use the libraries from aur/adom-noteye 3.3.3-6 (which works on my system):
$ export LD_LIBRARY_PATH=/opt/adom/lib
$ lddtree adom64
adom64 (interpreter => /lib64/ld-linux-x86-64.so.2)
libnoteye.so => /opt/adom/lib/libnoteye.so
libSDL2_image-2.0.so.0 => /opt/adom/lib/libSDL2_image-2.0.so.0
libpng16.so.16 => /lib64/libpng16.so.16
libjpeg.so.8 => /opt/adom/lib/libjpeg.so.8
libtiff.so.5 => /opt/adom/lib/libtiff.so.5
liblzma.so.5 => /lib64/liblzma.so.5
libjbig.so.0 => /opt/adom/lib/libjbig.so.0
libjpeg.so.62 => /opt/adom/lib/libjpeg.so.62
libwebp.so.6 => /opt/adom/lib/libwebp.so.6
libluajit-5.1.so.2 => /opt/adom/lib/libluajit-5.1.so.2
libdl.so.2 => /lib64/libdl.so.2
libutil.so.1 => /lib64/libutil.so.1
libSDL2_mixer-2.0.so.0 => /opt/adom/lib/libSDL2_mixer-2.0.so.0
libmodplug.so.1 => /lib64/libmodplug.so.1
libfluidsynth.so.1 => /opt/adom/lib/libfluidsynth.so.1
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0
libpcre.so.1 => /lib64/libpcre.so.1
libjack.so.0 => /lib64/libjack.so.0
libcelt0.so.2 => /lib64/libcelt0.so.2
libopus.so.0 => /lib64/libopus.so.0
libdb-5.3.so => /lib64/libdb-5.3.so
librt.so.1 => /lib64/librt.so.1
libasound.so.2 => /lib64/libasound.so.2
libpulse-simple.so.0 => /lib64/libpulse-simple.so.0
libpulse.so.0 => /lib64/libpulse.so.0
libdbus-1.so.3 => /lib64/libdbus-1.so.3
libsystemd.so.0 => /lib64/libsystemd.so.0
libzstd.so.1 => /lib64/libzstd.so.1
liblz4.so.1 => /lib64/liblz4.so.1
libcap.so.2 => /lib64/libcap.so.2
libgcrypt.so.20 => /lib64/libgcrypt.so.20
libgpg-error.so.0 => /lib64/libgpg-error.so.0
libpulsecommon-14.2.so => /usr/lib/pulseaudio/libpulsecommon-14.2.so
libxcb.so.1 => /lib64/libxcb.so.1
libXau.so.6 => /lib64/libXau.so.6
libXdmcp.so.6 => /lib64/libXdmcp.so.6
libasyncns.so.0 => /lib64/libasyncns.so.0
libresolv.so.2 => /lib64/libresolv.so.2
libsndfile.so.1 => /lib64/libsndfile.so.1
libvorbisenc.so.2 => /lib64/libvorbisenc.so.2
libvorbis.so.0 => /opt/adom/lib/libvorbis.so.0
libogg.so.0 => /opt/adom/lib/libogg.so.0
libreadline.so.7 => /opt/adom/lib/libreadline.so.7
libvorbisfile.so.3 => /opt/adom/lib/libvorbisfile.so.3
libFLAC.so.8 => /opt/adom/lib/libFLAC.so.8
libmad.so.0 => /lib64/libmad.so.0
libSDL2_net-2.0.so.0 => /opt/adom/lib/libSDL2_net-2.0.so.0
libGL.so.1 => /lib64/libGL.so.1
libGLdispatch.so.0 => /lib64/libGLdispatch.so.0
libGLX.so.0 => /lib64/libGLX.so.0
libX11.so.6 => /lib64/libX11.so.6
libz.so.1 => /opt/adom/lib/libz.so.1
libncurses.so.5 => /opt/adom/lib/libncurses.so.5
libtinfo.so.5 => /opt/adom/lib/libtinfo.so.5
libSDL2_ttf-2.0.so.0 => /opt/adom/lib/libSDL2_ttf-2.0.so.0
libfreetype.so.6 => /lib64/libfreetype.so.6
libbz2.so.1.0 => /lib64/libbz2.so.1.0
libharfbuzz.so.0 => /lib64/libharfbuzz.so.0
libfreetype.so.6 => !!! circular loop !!!
libgraphite2.so.3 => /lib64/libgraphite2.so.3
libm.so.6 => /lib64/libm.so.6
libgcc_s.so.1 => /lib64/libgcc_s.so.1
libpthread.so.0 => /lib64/libpthread.so.0
libcurl.so.4 => /opt/adom/lib/libcurl.so.4
libnghttp2.so.14 => /lib64/libnghttp2.so.14
libidn2.so.0 => /lib64/libidn2.so.0
libunistring.so.2 => /lib64/libunistring.so.2
librtmp.so.1 => /lib64/librtmp.so.1
libgnutls.so.30 => /lib64/libgnutls.so.30
libp11-kit.so.0 => /lib64/libp11-kit.so.0
libffi.so.7 => /lib64/libffi.so.7
libtasn1.so.6 => /lib64/libtasn1.so.6
libhogweed.so.6 => /lib64/libhogweed.so.6
libnettle.so.8 => /lib64/libnettle.so.8
libgmp.so.10 => /lib64/libgmp.so.10
libpsl.so.5 => /lib64/libpsl.so.5
libssl.so.1.1 => /lib64/libssl.so.1.1
libcrypto.so.1.1 => /lib64/libcrypto.so.1.1
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2
libkrb5.so.3 => /lib64/libkrb5.so.3
libk5crypto.so.3 => /lib64/libk5crypto.so.3
libcom_err.so.2 => /lib64/libcom_err.so.2
libkrb5support.so.0 => /lib64/libkrb5support.so.0
libkeyutils.so.1 => /lib64/libkeyutils.so.1
libldap_r-2.4.so.2 => /lib64/libldap_r-2.4.so.2
libsasl2.so.3 => /lib64/libsasl2.so.3
liblber-2.4.so.2 => /lib64/liblber-2.4.so.2
libSDL2-2.0.so.0 => /opt/adom/lib/libSDL2-2.0.so.0
libsndio.so.6.1 => /opt/adom/lib/libsndio.so.6.1
libbsd.so.0 => /lib64/libbsd.so.0
libXext.so.6 => /lib64/libXext.so.6
libXcursor.so.1 => /lib64/libXcursor.so.1
libXrender.so.1 => /lib64/libXrender.so.1
libXfixes.so.3 => /lib64/libXfixes.so.3
libXinerama.so.1 => /lib64/libXinerama.so.1
libXi.so.6 => /lib64/libXi.so.6
libXrandr.so.2 => /lib64/libXrandr.so.2
libXss.so.1 => /lib64/libXss.so.1
libXxf86vm.so.1 => /lib64/libXxf86vm.so.1
libwayland-egl.so.1 => /lib64/libwayland-egl.so.1
libwayland-client.so.0 => /lib64/libwayland-client.so.0
libwayland-cursor.so.0 => /lib64/libwayland-cursor.so.0
libxkbcommon.so.0 => /lib64/libxkbcommon.so.0
libstdc++.so.6 => /lib64/libstdc++.so.6
libc.so.6 => /lib64/libc.so.6
Running it this way results in a loop:
$ ./adom64
./adom64: /usr/lib/libldap_r-2.4.so.2: no version information available (required by /opt/adom/lib/libcurl.so.4)
./adom64: /usr/lib/liblber-2.4.so.2: no version information available (required by /opt/adom/lib/libcurl.so.4)
<2021-06-03 06:25:54> INFO : Creating background process
handling NotEye error #21: dofile [./common/ffi.noe:401: /opt/adom/lib/libluajit-5.1.so.2: undefined symbol: setOptimizeForText]
Ancient Domains Of Mystery -- Version 3.3.4
(includes NotEye by Zeno for graphical effects)
(C) Copyright 1994-2020 Thomas Biskup.
All Rights Reserved.
NotEye error detected, restarting NotEye
after closing:
handling NotEye error #21: dofile [./common/ffi.noe:401: /opt/adom/lib/libluajit-5.1.so.2: undefined symbol: setOptimizeForText]
restart OK
NotEye error detected, restarting NotEye
after closing:
handling NotEye error #21: dofile [./common/ffi.noe:401: /opt/adom/lib/libluajit-5.1.so.2: undefined symbol: setOptimizeForText]
restart OK
NotEye error detected, restarting NotEye
after closing:
handling NotEye error #21: dofile [./common/ffi.noe:401: /opt/adom/lib/libluajit-5.1.so.2: undefined symbol: setOptimizeForText]
...
Last edited by Moxon (2021-06-03 06:27:35)
Offline
So I officially give up running it directly. The gog version of ADOM is linked against Ubuntu 18.04 LTS as stated in this thread in the ADOM gog.com forum.
So I got down to install Ubuntu 20.04 LTS in gnome boxes, then adding some libraries from Ubuntu 18.04, notably:
libhogweed4_3.4.1-0ubuntu0.18.04.1_amd64.deb
libnettle6_3.4.1-0ubuntu0.18.04.1_amd64.deb
libsndio6.1_1.1.0-3_amd64.deb
and this works, including sound!
Last edited by Moxon (2021-06-27 14:40:58)
Offline