Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Shared library problems with Steam [SOLVED]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gamers & Players
View previous topic :: View next topic  
Author Message
pvh1987
n00b
n00b


Joined: 06 Jun 2012
Posts: 45

PostPosted: Wed Sep 19, 2018 9:38 pm    Post subject: Shared library problems with Steam [SOLVED] Reply with quote

I decided to try out some games with Steam. I found that Dying Light crashes on launch with the message "FATAL ERROR Cannot initialize renderer".

Running Steam from the terminal gives the following errors:

Code:

>>> Adding process 8900 for game ID 239140
GameAction [AppID 239140, ActionID 2] : LaunchApp changed task to WaitingGameWindow with ""
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.
/home/user/.local/share/Steam/steamapps/common/Dying Light/DyingLightGame: /usr/lib64/libldap_r-2.4.so.2: no version information available (required by /home/user/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4)
/home/user/.local/share/Steam/steamapps/common/Dying Light/DyingLightGame: /usr/lib64/liblber-2.4.so.2: no version information available (required by /home/user/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4)


I read somewhere that the gameoverlayrenderer.so errors are not to be worried about. The problem is clearly that Steam uses a mixture of system libraries in /usr/lib64 and Steam-bundled libraries. After a bit of research, I found out that openldap was not build with gnutls support. So I did a rebuild but I still get the same errors.

Next, I looked into libcurl-gnutls. I found out that by installing the libcurl-debian package, I got symlinks for libcurl-gnutls.so.4 and libcurl-nss.so.4 poiting to libcurl.so.4. However, these are located in /usr/lib64/debiancompat rather than /usr/lib64, so Steam cannot find them and still tries to use the bundled libraries.

I created new symlinks in /usr/lib64 and finally, Steam is now using the system libcurl-gnutls rather than the bundled version. But otherwise, still the same errors.

So, I found out that curl is build with openssl instead of gnutls. After setting CURL_SSL="gnutls" in my make.conf, this is the new output:

Code:

>>> Adding process 10677 for game ID 239140
GameAction [AppID 239140, ActionID 3] : LaunchApp changed task to WaitingGameWindow with ""
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.
/home/user/.local/share/Steam/steamapps/common/Dying Light/DyingLightGame: /usr/lib64/libcurl-gnutls.so.4: no version information available (required by libengine.so)


So there is still something wrong.

As a last resort, I tried to force Dying Light to use the Steam-bundled libraries:

Code:

$ cd ~/.local/share/Steam/steamapps/common/Dying\ Light
$ LD_LIBRARY_PATH="/home/user/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/;/home/user/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu" ./DyingLightGame


This time the splash screen comes up, the game appears to start but crashed with a box saying "Materials database was not correctly initialized. Please make sure that the global_*.mp files are present in Assets_XXX (platform specific) folder or in build Data folder."

I am not sure what to make of the above message, but it is clear that I solved some major problems by forcing the Steam-bundled libraries. The question is now: How do I setup Steam to use the bundled libraries by default?

Thanks in advance :-)


Last edited by pvh1987 on Fri Sep 21, 2018 3:40 pm; edited 1 time in total
Back to top
View user's profile Send private message
pvh1987
n00b
n00b


Joined: 06 Jun 2012
Posts: 45

PostPosted: Fri Sep 21, 2018 3:40 pm    Post subject: Reply with quote

Somehow I managed to get the game started using the same command in the terminal, forcing the bundled libraries. I did not change anything. I am not sure why it suddenly works...

Furthermore, the next day, when I started Steam again, it updated itself. Now I can launch the game from within Steam as well and it appears to use the bundled libraries now. So I guess the issue is solved, at least for now :-)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gamers & Players All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum