Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

esteam breaks Tomb Raider #308

Open
bell07 opened this issue Mar 22, 2022 · 7 comments
Open

esteam breaks Tomb Raider #308

bell07 opened this issue Mar 22, 2022 · 7 comments

Comments

@bell07
Copy link

bell07 commented Mar 22, 2022

# esteam -v
 * Scanning /home/user/.local/share/Steam ...
 * Deleted: Tomb Raider/lib/i686/libssl.so.1.0.0
 * Deleted: Tomb Raider/lib/i686/libcrypto.so.1.0.0
 * Deleted: Tomb Raider/lib/i686/libcurl.so.4

After this run the game does not start anymore.

Console output
GameAction [AppID 203160, ActionID 2] : LaunchApp changed task to ProcessingInstallScript with ""
GameAction [AppID 203160, ActionID 2] : LaunchApp changed task to SynchronizingCloud with ""
GameAction [AppID 203160, ActionID 2] : LaunchApp changed task to SynchronizingControllerConfig with ""
GameAction [AppID 203160, ActionID 2] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 203160, ActionID 2] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 203160, ActionID 2] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 203160, ActionID 2] : LaunchApp continues with user response "CreatingProcess"
/bin/sh\0-c\0/home/user/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=203160 -- '/home/user/.local/share/Steam/steamapps/common/Tomb Raider/TombRaider.sh'\0
Game process added : AppID 203160 "/home/user/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=203160 -- '/home/user/.local/share/Steam/steamapps/common/Tomb Raider/TombRaider.sh'", ProcID 20813, IP 0.0.0.0:0
chdir /home/user/.local/share/Steam/steamapps/common/Tomb Raider
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
GameAction [AppID 203160, ActionID 2] : LaunchApp changed task to WaitingGameWindow with ""
GameAction [AppID 203160, ActionID 2] : LaunchApp changed task to Completed with ""
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 20815 != 20814, skipping destruction (fork without exec?)
pid 20816 != 20814, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 20820 != 20814, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 20821 != 20814, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 20825 != 20814, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 20831 != 20827, skipping destruction (fork without exec?)
pid 20834 != 20827, skipping destruction (fork without exec?)
pid 20837 != 20827, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 20836 != 20827, skipping destruction (fork without exec?)
pid 20840 != 20827, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 20839 != 20827, skipping destruction (fork without exec?)
pid 20843 != 20827, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 20842 != 20827, skipping destruction (fork without exec?)
ThreadGetProcessExitCode: no such process 20844
ThreadGetProcessExitCode: no such process 20841
ThreadGetProcessExitCode: no such process 20838
ThreadGetProcessExitCode: no such process 20835
ThreadGetProcessExitCode: no such process 20833
ThreadGetProcessExitCode: no such process 20832
ThreadGetProcessExitCode: no such process 20830
ThreadGetProcessExitCode: no such process 20829
ThreadGetProcessExitCode: no such process 20827
ThreadGetProcessExitCode: no such process 20824
ThreadGetProcessExitCode: no such process 20823
ThreadGetProcessExitCode: no such process 20822
ThreadGetProcessExitCode: no such process 20817
pid 20826 != 20814, skipping destruction (fork without exec?)
ERROR: ld.so: object 'libminimum_thread_stack_size_wrapper.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
/home/user/.local/share/Steam/steamapps/common/Tomb Raider/bin/TombRaider: /home/user/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32/libcurl.so.4: version `CURL_OPENSSL_4' not found (required by /home/user/.local/share/Steam/steamapps/common/Tomb Raider/bin/TombRaider)
/home/user/.local/share/Steam/steamapps/common/Tomb Raider/bin/TombRaider: /home/user/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32/libdbus-1.so.3: no version information available (required by /usr/lib/libgconf-2.so.4)
/home/user/.local/share/Steam/steamapps/common/Tomb Raider/bin/TombRaider: /home/user/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32/libdbus-1.so.3: no version information available (required by /usr/lib/libdbus-glib-1.so.2)
Game process removed: AppID 203160 "/home/user/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=203160 -- '/home/user/.local/share/Steam/steamapps/common/Tomb Raider/TombRaider.sh'", ProcID 20813 
ThreadGetProcessExitCode: no such process 20828
ThreadGetProcessExitCode: no such process 20814
Uploaded AppInterfaceStats to Steam

Why replace game files by ubuntu files? If I look into
ldd /home/user/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32/libcurl.so.4
libidn.so.11 and librtmp.so.0 is required, but /usr/lib/libidn.so.12 and /usr/lib/librtmp.so.1 are available in system.

@chewi
Copy link
Collaborator

chewi commented Mar 22, 2022

It's been a few years since I ran Tomb Raider 2013. Unfortunately I don't have it installed any more, but this did work at the time. Either pinned libraries weren't a thing back then or you're still running with the Steam runtime enabled and that's causing weird issues. I've never really tried combining the runtime with esteam so I'm not sure whether it's a good idea. Let's start by trying Steam with STEAM_RUNTIME=0 steam.

@bell07
Copy link
Author

bell07 commented Mar 22, 2022

then I get error message at start

  1. "You are missing the following 32-bit libraries, and Steam may not run: libpopewire-0.3.so.0"
  2. "Fatal Error: Failed to load steamui.so"

Seems there is any additional missed dependency...

@chewi
Copy link
Collaborator

chewi commented Mar 22, 2022

Oh right, sorry, you'll need to rebuild steam-client-meta with USE=-steamruntime to pull in the various dependencies.

If you didn't have any problems with Steam before installing esteam then you may prefer to just uninstall it and fix Tomb Raider by entering the games Properties, choosing Local Files, and then Verify integrity of game files. I had originally planned to make esteam a mandatory dependency as I thought it might help even when the runtime is enabled, but I've changed my mind. It's not mandatory any more.

@bell07
Copy link
Author

bell07 commented Mar 22, 2022

Maybe esteam should be able to override steamruntime libs by system libs, like done for games.
Second missed feature is to blacklist games in case of issues.
I try to rebuild now without steamruntime... Yes, without the esteam optimizations the game does work as expected with steamruntime.

@bell07
Copy link
Author

bell07 commented Mar 22, 2022

I cannot disable steamruntume because then networkmanager is pushed into system. I use net-misc/connman for network management.

Any chance to get esteam working with steamruntime?

@chewi
Copy link
Collaborator

chewi commented Mar 22, 2022

esteam has a whitelist and Tomb Raider is in that list. Otherwise it just tries to satisfy any missing dependencies without deleting anything.

I don't use NetworkManager either. You don't actually need to use it, it's only there to satisfy a library dependency. The same thing happens when you're using the runtime.

I wrote esteam because I had some compatibility issues with the runtime and sometimes wanted newer/optimised/customised libraries. If you're using the runtime, then you don't have to use esteam because the runtime should cover all the libraries you need, at least in theory. Why do you think you need esteam?

@bell07
Copy link
Author

bell07 commented Mar 22, 2022

Before I opened this issue i did not know what steamruntime is. Have just a player point of view.
Was tried esteam because the steam-games-meta was masked with the hint. Now I know I did not needed steam-games-meta too. Of course I try to get some FPS more out from the game if possible. My assumption is to get it with system libraries optimized for my system...

Maybe the esteam package should block the steam-client-meta[steamruntime] or print a hint about the incompatibility to steamruntume?

Or replace some steamruntime libraries if similar files are installed in system. For testing reason I kept steamruntime, applied esteam and deleted the affected /home/user/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32/libcurl.so.4. Now the game starts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants