It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Hi,

I fetched the latest version 3.3.4 for Linux, but get the following error, when I try to start the game:
Running ADOM (Ancient Domains Of Mystery) (English)
<2020-11-12 16:12:35> INFO : Creating background process
./adom64: symbol lookup error: /lib/x86_64-linux-gnu/libSDL2_image-2.0.so.0: undefined symbol: SDL_RWseek

Regards

PS.: This holds true for version 3.3.4.1 as well.
Post edited November 29, 2020 by dTerminist
This question / problem has been solved by digirigawaimage
Hi,

I don't think that an easy fix is possible since we're still linking against Ubuntu 18 (which is what the GOG guidelines still recommend).

I guess for the next release we should switch to Ubuntu 20.
avatar
jterstiege: Hi,

I don't think that an easy fix is possible since we're still linking against Ubuntu 18 (which is what the GOG guidelines still recommend).

I guess for the next release we should switch to Ubuntu 20.
Thank you for the quick response.

I wanted to drop you a line on the ADOM forums as well, since in the meantime I also tested it with the free release and encountered the same problem. I guess that's not needed then.

Is there some rough estimation yet, when the next release will happen?
avatar
dTerminist: Hi,

I fetched the latest version 3.3.4 for Linux, but get the following error, when I try to start the game:
Running ADOM (Ancient Domains Of Mystery) (English)
<2020-11-12 16:12:35> INFO : Creating background process
./adom64: symbol lookup error: /lib/x86_64-linux-gnu/libSDL2_image-2.0.so.0: undefined symbol: SDL_RWseek

Regards
Hi,

Having the same problem (Linux Mint 20); somenone postet the problem in the ADOM-Forum:
https://www.adom.de/forums/project.php?issueid=6641 ]https://www.adom.de/forums/project.php?issueid=6641
although with no solution so far.

The symbol lookup error seems to be a known problem though; it comes up a couple of times in the forum.

I guess, we'll have to wait for the next release.

regards
Post edited November 29, 2020 by muteaudio
avatar
muteaudio: Hi,

Having the same problem (Linux Mint 20); somenone postet the problem in the ADOM-Forum:
https://www.adom.de/forums/project.php?issueid=6641 ]https://www.adom.de/forums/project.php?issueid=6641
although with no solution so far.

The symbol lookup error seems to be a known problem though; it comes up a couple of times in the forum.

I guess, we'll have to wait for the next release.

regards
Thanks for the info! Would it be very hard to ship binaries for multiple targets? It seems the binaries are only some 30+ MB large in total. In case I am not mistaken, the overhead wouldn't be that big. A release for "Linux" to me implies that the installer would have to take care of different distros anyway.

Cheers
@jterstiege

It would be great if the ASCII mode of ADOM Deluxe would be included as a separat file. Right now I cannot play the game at all, due to the above issue. The free ASCII version runs flawlessly though. If it were included with the Deluxe features, it would at least cushion the fall.

The advertisement of 'Cloud saves' in the FAQ on adom.de perhaps should be removed, since after comparison with the description on gog.com/game/adom I come to the conclusion that it is non-existing.

Cheers
Just one of the possible solutions. You can actually setup LXC container and install minimal required configuration of the needed Ubuntu version there. Same thing probably could be done with less overheads via Docker container as well, but it would require much more work and tinkering on your side. While in the LXC container you just install the game, connect via ssh with X server port forwarding to the emulated environments and run the game.

P. S. I personally still play free DOS version of the ADOM via the DOSBox. Since it has the most proper feel and look this way.
P. P. S. Yes, I have purchased the commercial version on GOG but most of it's "novelties" are to much for the old fun like me.
Post edited December 05, 2020 by Schwertz
avatar
Schwertz: Just one of the possible solutions. You can actually setup LXC container and install minimal required configuration of the needed Ubuntu version there. Same thing probably could be done with less overheads via Docker container as well, but it would require much more work and tinkering on your side. While in the LXC container you just install the game, connect via ssh with X server port forwarding to the emulated environments and run the game.
True, but imho the most convenient one. Setting up LXC, Docker or something similar, is what I wanted to avoid in the first place.
avatar
Schwertz: P. S. I personally still play free DOS version of the ADOM via the DOSBox. Since it has the most proper feel and look this way.
P. P. S. Yes, I have purchased the commercial version on GOG but most of it's "novelties" are to much for the old fun like me.
For me it's a bit different. I purchased the Deluxe edition specifically for it's new game features. Having the nice graphic tiles available I don't feel the urge to play the ascii version. Which is why I don't see the point of switching to classic mode in the first place, when the game would work with tiles anyway. It makes more sense for me, if it were to tradeoff one for the other. It would probably be even an advantage for the game in targeting more systems.

I have probably played the ascii game for a hundred hours some 15 years ago. I found it always being way cooler than the other games of it's kind. ;-)
I'm running Linux Mint 20.04 and had to fight a bit to get this working - mine is free version 3.3.3 though, but should work with GOG version as well.

That SDL error comes as system SDL image lib is different, but game has embedded 'lib' folder with suitable version. So to get past this undefined symbol: SDL_RWseek problem, you need to make game search libs from that lib folder when launching the game:

LD_LIBRARY_PATH=$YOUR_ADOM_INSTALL_DIR/lib ./adom

I had to install few external packages as well to satisfy dependencies. Most comes with the distribution itself but for others, I headed to packages.ubuntu.com/bionic

had to get and install these from the site:
- libsndio6.1_1.1.0-3_amd64.deb
- libfluidsynth1_1.1.9-1_amd64.deb
- libreadline7_7.0-3_amd64.deb

They don't seem to replace system ones, so its safe to install those.

Hopefully this helps you guys to get it working :-)
avatar
digirigawa: That SDL error comes as system SDL image lib is different, but game has embedded 'lib' folder with suitable version. So to get past this undefined symbol: SDL_RWseek problem, you need to make game search libs from that lib folder when launching the game:
I am a bit puzzled as to why the game executable doesn't use these libs as the default in the first place.
avatar
digirigawa: LD_LIBRARY_PATH=$YOUR_ADOM_INSTALL_DIR/lib ./adom

I had to install few external packages as well to satisfy dependencies. Most comes with the distribution itself but for others, I headed to packages.ubuntu.com/bionic
Yep, that did the trick! :-D
avatar
digirigawa: Hopefully this helps you guys to get it working :-)
Appreciated! ;-)
avatar
digirigawa: That SDL error comes as system SDL image lib is different, but game has embedded 'lib' folder with suitable version. So to get past this undefined symbol: SDL_RWseek problem, you need to make game search libs from that lib folder when launching the game:
avatar
dTerminist: I am a bit puzzled as to why the game executable doesn't use these libs as the default in the first place.
Unlike on Windows, Linux executables always default to the system-wide libraries. It's up to launching script to alter shared objects loading order and search location(s).
avatar
Schwertz: Unlike on Windows, Linux executables always default to the system-wide libraries. It's up to launching script to alter shared objects loading order and search location(s).
Understood! The Linux version of the game ships with a bash script, but it's not adjusted to this behavior.
avatar
digirigawa: LD_LIBRARY_PATH=$YOUR_ADOM_INSTALL_DIR/lib ./adom
Can you point me to some resource/documentation for this env variable?
Version 3.3.4.1 on Ubuntu 20.04 works after next steps:

1) Modify one line in the file "/home/user/GOG Games/ADOM Ancient Domains Of Mystery English/start.sh":
LD_LIBRARY_PATH=./lib64/ ./adom64

2) Create symlink to the system "libsndio" file:
sudo ln -s /usr/lib/x86_64-linux-gnu/libsndio.so.7.0 "/home/user/GOG Games/ADOM Ancient Domains Of Mystery English/game/lib64/libsndio.so.6.1"

3) Download packages "libnettle6_3.4-1_amd64.deb" and "libhogweed4_3.4-1_amd64.deb" from Ubuntu 18.04:
packages.ubuntu.com/bionic/amd64/libnettle6/download
packages.ubuntu.com/bionic/amd64/libhogweed4/download

and extract files libnettle.so.6, libnettle.so.6.4, libhogweed.so.4, libhogweed.so.4.4 to the game library path:
"/home/user/GOG Games/ADOM Ancient Domains Of Mystery English/game/lib64/"
avatar
kagamar: Version 3.3.4.1 on Ubuntu 20.04 works after next steps:

1) Modify one line in the file "/home/user/GOG Games/ADOM Ancient Domains Of Mystery English/start.sh":
LD_LIBRARY_PATH=./lib64/ ./adom64

2) Create symlink to the system "libsndio" file:
sudo ln -s /usr/lib/x86_64-linux-gnu/libsndio.so.7.0 "/home/user/GOG Games/ADOM Ancient Domains Of Mystery English/game/lib64/libsndio.so.6.1"

3) Download packages "libnettle6_3.4-1_amd64.deb" and "libhogweed4_3.4-1_amd64.deb" from Ubuntu 18.04:
packages.ubuntu.com/bionic/amd64/libnettle6/download
packages.ubuntu.com/bionic/amd64/libhogweed4/download

and extract files libnettle.so.6, libnettle.so.6.4, libhogweed.so.4, libhogweed.so.4.4 to the game library path:
"/home/user/GOG Games/ADOM Ancient Domains Of Mystery English/game/lib64/"
First of all: Thank you for this workaround.
It needs some improvements for it towork, though:

If you replace
sudo ln -s /usr/lib/x86_64-linux-gnu/libsndio.so.7.0 "/home/user/GOG Games/ADOM Ancient Domains Of Mystery English/game/lib64/libsndio.so.6.1"
With:
sudo ln -s /usr/lib/x86_64-linux-gnu/libsndio.so.7.0 "/home/$USER/GOG Games/ADOM Ancient Domains Of Mystery English/game/lib64/libsndio.so.6.1"
You won't have to replace the user directory with your own directory, as the builtin $USER variable takes care of that for you.

Another thing that's important is to put a colon ':' between the paths you are referencing as LD_LIBRARY_PATH:
Like so:
LD_LIBRARY_PATH="./lib64/:./adom64" ./"adom64"
However, as DTerminist mentioned later (Thank you!) , the ./adom64/ is not necessary to include in the LD_LIBRARY_PATH
The last line of the run_game procedure will have to be changed from:
LD_LIBRARY_PATH="./lib64/ ./adom64" ./"adom64"
to
LD_LIBRARY_PATH="./lib64/" ./"adom64"
in order for the workaround to work.

I have tested this on my Ubuntu 20.04.2 LTS installation and I could start ADOM without installing the 18.04 libnettle and libhogweed libraries.
The ones included with 20.04 worked just fine.
Post edited February 22, 2021 by jorlin
avatar
jterstiege: Hi,

I don't think that an easy fix is possible since we're still linking against Ubuntu 18 (which is what the GOG guidelines still recommend).

I guess for the next release we should switch to Ubuntu 20.
Are you sure, that GOG recommends Ubuntu 18 instead of Ubuntu 16 to link against?
Ubuntu 16.04 is an LTS version, as is the current LTS 20.04