You are not logged in.

#1 2021-05-18 16:17:17

Moxon
Member
Registered: 2017-01-30
Posts: 10

[solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

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

#2 2021-05-18 16:40:28

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,425

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

The first issue should be simply fixable by installing sdl2_mixer is that the case?

Offline

#3 2021-05-18 20:42:55

Moxon
Member
Registered: 2017-01-30
Posts: 10

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

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 sad

Offline

#4 2021-05-19 12:48:41

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

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.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#5 2021-05-20 19:36:40

Moxon
Member
Registered: 2017-01-30
Posts: 10

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

Lone_Wolf wrote:

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

#6 2021-05-21 09:21:53

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

moxon wrote:

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.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#7 2021-06-01 21:22:51

Moxon
Member
Registered: 2017-01-30
Posts: 10

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

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

#8 2021-06-02 12:39:17

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

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.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#9 2021-06-03 06:20:05

Moxon
Member
Registered: 2017-01-30
Posts: 10

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

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

#10 2021-06-27 14:39:34

Moxon
Member
Registered: 2017-01-30
Posts: 10

Re: [solved] ADOM (Ancient Domains Of Mystery): GOG Version does not start

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

Board footer

Powered by FluxBB