ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.27k stars 174 forks source link

Fatal Error: Failed to load libsteam.so #1981

Closed kevincox closed 11 years ago

kevincox commented 11 years ago

When I try to start steam after the 23/2/2013 update it tries to update and gives a dialog with the following error:

Fatal Error: Failed to load libsteam.so

I am on 64bit arch linux.

slouken commented 11 years ago

Can you print the entire output from the terminal? Also, what is the output of LD_LIBRARY_PATH=~/.steam/steam/ubuntu12_32 ldd ~/.steam/steam/ubuntu12_32/libsteam.so

kevincox commented 11 years ago

There isn't much output.

Running Steam on arch rolling 64-bit
STEAM_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(steam)/version(0_client)
Installing breakpad exception handler for appid(steam)/version(1.0_client)
Installing breakpad exception handler for appid(steam)/version(1.0_client)
Installing breakpad exception handler for appid(steam)/version(1.0_client)
$ LD_LIBRARY_PATH=~/.steam/steam/ubuntu12_32 ldd ~/.steam/steam/ubuntu12_32/libsteam.so
ldd: /home/kevin/.steam/steam/ubuntu12_32/libsteam.so: No such file or directory
kevincox commented 11 years ago

I updated my steam package and got a segfault once. It didn't happen when I ran it the next time.

$ steam
Running Steam on arch rolling 64-bit
STEAM_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(steam)/version(0_client)
Installing breakpad exception handler for appid(steam)/version(1.0_client)
Installing breakpad exception handler for appid(steam)/version(1.0_client)
Installing breakpad exception handler for appid(steam)/version(1.0_client)
/data/Steam/steam.sh: line 561:  9922 Segmentation fault      (core dumped) $STEAM_DEBUGGER "$STEAMROOT/$PLATFORM/$STEAMEXE" "$@"
slouken commented 11 years ago

So it's working now?

If you run into this in the future, you can run this to reset your installation: steam --reset

kevincox commented 11 years ago

Sorry, I should have been more clear. It still gives the error and doesn't start but doesn't segfault.

slouken commented 11 years ago

What happens when you do steam --reset?

kevincox commented 11 years ago

Same thing, No segfault

slouken commented 11 years ago

You'll have to go into the files in ~/.steam/steam and see why there's no libsteam.so. If you can't figure it out, go ahead and download the latest package from repo.steampowered.com and compare the files and see why it doesn't work. If you don't want to bother, you should be able to nuke ~/.steam and ~/.local/share/Steam and try installing the latest package. http://repo.steampowered.com/steam/archive/precise/steam_latest.tar.gz

kevincox commented 11 years ago

I nuked my profile and it worked. Which is weird because I did it before except ~/.local/share/Steam/ was a symlink to a folder on a different drive.

integrii commented 11 years ago

I'm getting this problem now. on Ubuntu. Linux propel 2.6.32-45-generic #102-Ubuntu SMP Wed Jan 2 22:38:04 UTC 2013 x86_64 GNU/Linux root@propel:/home/hgs2182# ls hgsbackup install-script.txt linux32 package steamcmd steamcmd.sh html libsteam.so orangebox public steamcmd_linux.tar.gz steam.sh root@propel:/home/hgs2182# ./steamcmd Redirecting stderr to '/root/Steam/logs/stderr.txt' [ 0%] Checking for available updates... [ 0%] Download complete. [----] Verifying installation... [----] !!! Fatal Error: Failed to load libsteam.so Steamcmd.sh gives a similar problem

root@propel:/home/hgs2182# ./steamcmd.sh Redirecting stderr to '/root/Steam/logs/stderr.txt' [ 0%] Checking for available updates... [----] Verifying installation... [----] !!! Fatal Error: Steam failed to load: *SteamStartEngine(0xff9d9200) failed with error 1: Failed to create directory /root/Steam Yeah I know I'm root and yeah I know I am in a non-standard directory... but why does it not work? The directory /root/Steam exists and the libsteam.so library is in the same directory I am in.

integrii commented 11 years ago

Further more, an strace shows it looking for libsteam.so in all kinds of places like /home/libsteam.so. I tried putting the library in some of those places but it made no difference.

Seems like this could be done a lot better.

BKPepe commented 11 years ago

Same problem!

dlopen failed trying to load: /home/pepe/.local/share/Steam/linux32/libsteam.so with error: /home/pepe/.local/share/Steam/linux32/libsteam.so: cannot open shared object file: No such file or directory

Ubuntu 13.04 64bit, latest kernel 3.9.4

integrii commented 11 years ago

Found the answer myself. steamcmd.sh won't run outside the current user's home directory.

http://www.hostedgameservers.com/2013/3737

dvogel commented 11 years ago

One cause for this error is when steam fails to unpack an update. For me it was because I have my Steam dir on a separate filesystem than my home dir. That causes the update unpack processes to die with errno 18 (EXDEV), when it tries to link across filesystems. Moving my $HOME/.steam to the same filesystem as my Steam dir fixes this.