Rise of the Tomb Raider SIGABRT(6) with Vega56 on Fedora 35/36
Page: 1/2»
  Go to:
Free_gamer 13 May
My System Info

Linux Distribution: Fedora 36
Desktop Environment: Gnome (X11)
Graphics Card: Vega56
GPU Driver Version: 22.0.3-1.fc36
Mesa Versions: https://pastebin.com/cXxY4ZPs

Have you checked for system updates?: [Yes]

Steam System Information: https://pastebin.com/TM9SNUud

You can note your issue below here
Hello, I tried playing the native version of Rise of the Tomb Raider on my computer with an Vega56 eGPU, but for some reason the game always defaults to the Intel iGPU and the feral launcher doesn't even show the Vega56.
When I try to force the Vega56 and radv the launcher crashes with a SIGABRT(6).

Terminal output: https://pastebin.com/NahnkU1a

The game starts on the Intel iGPU, or Nvidia dGPU (deactivated) on this computer and another computer with only Nvidia GPU without troubles. Other games also have no problem with the Vega56, including Shadow of the Tomb Raider.

I've also already written a reddit post and contacted Feral interactive, but so far the game simply won't work with the AMD card for some reason.

Anyone else who had this problem and found a way to fix it? So far the things I've tried from Google, ProtonDB (from posts about the native version) or the Steam forum did not help.

Note any particular steps to reproduce it below here
When I try to force the radv driver either via  
VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.x86_64.json %command%


or

DRI_PRIME=0 %command% // 0 = Vega56, 1 = Intel iGPU

the launcher crashes with a SIGABRT(6) before it even starts.
mr-victory 13 May
Quoting: Free_gamerWhen I try to force the radv driver either via  
VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.x86_64.json %command%
Try also adding the i686 variant.
Free_gamer 13 May
Quoting: mr-victory
Quoting: Free_gamerWhen I try to force the radv driver either via  
VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.x86_64.json %command%
Try also adding the i686 variant.

Thanks for your answer, I've tried VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json %command%

but it also crashes with SIGABRT(6). :(
Free_gamer 17 May
I also tried it now on Ubuntu 22.04 and also with the amdvlk driver, but it also crashes with the same error message. So I guess the port is sadly dead for newer drivers on Linux, which is a shame because it used to be a very good port and is still playable with current nvidia drivers. :(
Ehvis 17 May
Quoting: Free_gamerI also tried it now on Ubuntu 22.04 and also with the amdvlk driver, but it also crashes with the same error message. So I guess the port is sadly dead for newer drivers on Linux, which is a shame because it used to be a very good port and is still playable with current nvidia drivers. :(

If it starts on both intel and nvidia, then blaming the port sounds a bit premature. Especially with it ending with a SIGABRT in "basic_filebuf::underflow error reading the file".

But if it's just the launcher, then edit the shell file and make it run the game immediately.
Free_gamer 17 May
Edit:// I've written the feral support, that this also happens on Ubuntu 22.04 and they've told me that they've raised this issue with the dev team so that they also take a look into it.

Quoting: EhvisIf it starts on both intel and nvidia, then blaming the port sounds a bit premature. Especially with it ending with a SIGABRT in "basic_filebuf::underflow error reading the file".

But if it's just the launcher, then edit the shell file and make it run the game immediately.

From what I can see from the game files and the launch script, there is no separate binary for the launcher. The shell script directly launches the game binary.

I've stripped pretty much everything out of the launch script, except for finding the game folder, getting some necessary information and then starting the game binary:

 
# 'Magic' to get the game root
GAMEROOT="$(sh -c "cd \"${0%/*}\" && echo \"\$PWD\"")"
FERAL_CONFIG="${GAMEROOT}/config"

# Pull in game specific variables
# This is required - we'll fail without it
# shellcheck source=config/game-settings.sh
. "${FERAL_CONFIG}/game-settings.sh"

# The game's preferences directory
if [ -z "${FERAL_PREFERENCES_DIR}" ]; then FERAL_PREFERENCES_DIR="feral-interactive/${FERAL_GAME_NAME_FULL}"; fi
GAMEPREFS="$HOME/.local/share/${FERAL_PREFERENCES_DIR}"

# ====================================================================
# Run the game
cd "${GAMEROOT}/bin"

# Launch the game with all the arguments
${GAME_LAUNCH_PREFIX} "${GAMEROOT}/bin/${FERAL_GAME_NAME}" "$@"
RESULT=$?

# ====================================================================
exit "${RESULT}"


game-settings.sh:
#!/bin/bash
# Launch Settings for Rise of the Tomb Raider GoldMaster
# 2018-05-31 13:05:11 UTC

FERAL_GAME_NAME="RiseOfTheTombRaider" # Short form name (game binary name)
FERAL_GAME_NAME_FULL="Rise of the Tomb Raider" # Long form name
FERAL_GAME_STEAMID="391220" # Then steam ID
FERAL_LIB_PATH="lib" # Path to game libraries
FERAL_ARCH_SHORT="64" # Short form architecture name (64/32)
FERAL_ARCH_FULL="x86_64" # Long form architecture name (x86_64/i386)
FERAL_PREFERENCES_DIR="feral-interactive/Rise of the Tomb Raider" # Preferences directory name
FERAL_LAUNCHER_GAMES=() # List of project binary names


So it looks like, the launcher is a part of the game binary itself.
In the launcher you have to option to deactivate the launcher, but it still gets started in the background so that you can get it back holding ctrl after starting the game.

Last edited by Free_gamer on 17 May 2022 at 1:35 pm UTC
mirv 17 May
For what it's worth, as a kind of procrastination from other things today, Rise of the Tomb Raider installed and fired up just fine for me. I updated my Gentoo box only a few days ago - Mesa is the latest & greatest specifically, although the kernel isn't (yet) bleeding edge.

I wonder if it's semi-related to systemd, or effecitvely something game-mode that's being tried with AMD drivers? I don't use systemd, and don't provide interfaces and/or permissions that game-mode can use for changing a bunch of stuff (I do it all manually when I deem it worthy of enough improvement to gameplay performance).
Free_gamer 17 May
Nice to hear, that it's still running on other modern Linux distributions with the AMD drivers.
Really strange what's going that this happens on Fedora and Ubuntu.

Also a shame that there's not more detailed output so that you could know where/when that happens.
whizse 18 May
I'm guessing it's something specific to do with eGPU setups.

There are a couple of relevant issues in the bug tracker. A closed bug which specifically mentions some Feral ports like Tomb Raider and Total War and this open issue mentions a Vega56 eGPU.
Free_gamer 18 May
Quoting: whizseI'm guessing it's something specific to do with eGPU setups.

There are a couple of relevant issues in the bug tracker. A closed bug which specifically mentions some Feral ports like Tomb Raider and Total War and this open issue mentions a Vega56 eGPU.

Thanks for looking these bugs up. It's just very strange, because every other game I've tested so far works without problems on the eGPU (besides the GPU getting bottlenecked because of thunderbolt). Even Shadow of the Tomb Raider works.
whizse 19 May
"basic_filebuf::underflow error reading the file" - would be interesting to strace the launcher and see what file exactly it's trying to read before the SIGABRT.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: Liberapay or PayPal.

This ensures all of our main content remains totally free for everyone with no article paywalls. We also don't have tons of adverts, there's also no tracking and we respect your privacy. Just good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register

Or login with...
Sign in with Steam Sign in with Twitter Sign in with Google
Social logins require cookies to stay logged in.