Problem with missing liblua5.2.so.0 on latest Linux x64 build on Fedora 28

I recently switched to Fedora 28 from Debian and I’m having a problem with running the latest x64 terminal build of Cataclysm (downloaded from here). When cataclysm is run in a terminal, liblua5.2.so.0 is reported to be missing despite the fact that I have Lua installed:

$ ./cataclysm
./cataclysm: error while loading shared libraries: liblua5.2.so.0: cannot open shared object file: No such file or directory

The problem is that none of the packages in Fedora provide Lua 5.2—all of them provide Lua 5.3 plus related libraries and unlike Debian, Fedora doesn’t keep old packages in its repositories.

So what options do I have? Do I download the file liblua5.2.so.0 from somewhere, put it in the game directory and change $LD_LIBRARY_PATH so that the loader can see it? I’m sure there’s a better solution out there… ideas?

Edit: Btw, what’s the rationale behind not statically building the binary with lua5.2 considering the last release of 5.2.x was around 2015?

1 Like

As expected, this can be fixed by downloading the 5.2 binary from the official Lua website, renaming the shared library to liblua5.2.so.0 and then running

env LD_LIBRARY_PATH=. ./cataclysm

which does run the game but the loader throws up a lot of errors:

./cataclysm: /lib64/libtinfo.so.5: no version information available (required by ./cataclysm)
./cataclysm: /lib64/libncursesw.so.5: no version information available (required by ./cataclysm)
./cataclysm: /lib64/libncursesw.so.5: no version information available (required by ./cataclysm)
./cataclysm: /lib64/libncursesw.so.5: no version information available (required by ./cataclysm)
./cataclysm: /lib64/libncursesw.so.5: no version information available (required by ./cataclysm)
./cataclysm: ./liblua5.2.so.0: no version information available (required by ./cataclysm)

Is there any other way to fix this?

You can try setting up LUA_BINARY environment variable.

That doesn’t work. export LUA_BINARY=/usr/lib64/liblua-5.3.so or any thing else does nothing. Only changing LD_LIBRARY_PATH to point to the downloaded library works as stated in my earlier post and that too leads to loader errors.

I tried not to upgrade Lua to the latest version and ended up using snap. It appears to be pretty fresh. But maybe not stable. )

snap install cataclysm
cataclysm