(from the Gaming On Modern Linux department)
Hi everyone,
Quick post here - I've been trying to run the original Feral Interactive port of Tomb Raider on Arch Linux. It starts - then stops immediately.
Looking at the Arch Gaming troubleshooting guide here: https://wiki.archlinux.org/title/Steam/Game-specific_troubleshooting#Tomb_Raider_(2013) they mention trying to see if there are missing libraries. The output of that command is:
$ ldd steamapps/common/Tomb\ Raider/bin/TombRaider | grep found
libssl.so.1.0.0 => not found
libicui18n.so.51 => not found
libicuuc.so.51 => not found
libicudata.so.51 => not found
libCoreFoundation.so.476 => not found
libvorbis.so.0 => not found
libSDL2_image-2.0.so.0 => not found
libcrypto.so.1.0.0 => not found
libcef.so => not found
libpdf.so => not found
libfmodex.so => not found
The weird part? All of these libraries are already present in .steam/steam/steamapps/common/Tomb Raider/lib/i686
I thought "That's weird". I looked at the debug output in Steam - and yes - it can't find those libs. I messed around with a few different approaches - adding LD_LIBRARY_PATH to the startup options, etc. - but nothing seemed to work.
In desperation - and just because I like to be weird - I tried this:
$ cd ~/.steam/steam/steamapps/common/Tomb\ Raider/lib
$ ls
i686
$ cp i686/* .
$ ls
i686 libCoreFoundation.so.476 libcurl.so.4 libicudata.so.51 libicuuc.so.51 libssl.so.1.0.0 libtcmalloc_minimal.so
libcef.so libcrypto.so.1.0.0 libfmodex.so libicui18n.so.51 libpdf.so libsteam_api.so
And tried starting the game again. It worked!
That wastes 152M of hard drive space though - so I deleted the files and decided to create a symbolic link to the files instead:
$ cd ~/.steam/steam/steamapps/common/Tomb\ Raider/lib
$ ls
i686
$ ln -s i686/* .
$ ls
i686 libCoreFoundation.so.476 libcurl.so.4 libicudata.so.51 libicuuc.so.51 libssl.so.1.0.0 libtcmalloc_minimal.so
libcef.so libcrypto.so.1.0.0 libfmodex.so libicui18n.so.51 libpdf.so libsteam_api.so
Works just the same - and saves a ton of space!
So - the summary is - it should be loading the game libraries from the i686 subdirectory, but it doesn't seem to be able to find them. Making them available one level up seems to solve the problem.
Cheers,
Paul