Issue with loading SteamCMD for 7 Days to Die server on Linux Ubuntu

Hello everyone,

I'm currently trying to set up a 7 Days to Die server on Linux Ubuntu using SteamCMD, but I'm facing an issue with loading SteamCMD and the required SDL library. I would appreciate any assistance or guidance to resolve this problem.

When running SteamCMD, I encounter the following error messages:
"Loading Steam API... dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory
dlmopen libSDL3.so.0 failed: libSDL3.so.0: cannot open shared object file: No such file or directory
OK"

I've tried searching for the steamservice.so file using the find command, but it wasn't found.

Similarly, I searched for the libSDL3.so.0 file using the find command, but it was not found either.

I installed the libsdl2-2.0-0 package using sudo apt-get install libsdl2-2.0-0, but the issue persists.

I've tried several Ubuntu distros, and all of them, I got the same error. 
I even tried a few times to ignore this problem and installed and run the server, but it only shows as available, but when I try to connect to it, I got a messege saying that wasn't possible to retriece the server data (or something like this)

 
I am now having the exact same issue, after stopping my server today for an update to the new beta build. If anyone has a solution for this that'd be great. The server updated but now when I run it, it just auto-closes in a few seconds.

I saw somewhere online it has to do with expired dedicated server tokens, but I install my server with "login anonymous" in steamCMD - so I don't see how that works?

Any help will be much appreciated!

 
Several things:

  • The error in question can be ignored.  steamcmd will still function (but see below).  I do not know why Valve links their binary against libsdl3 anyway since it's a CLI program; SDL is a graphics drawing library.
  • Ubuntu package libsdl2-2 is for SDL version 2, not SDL version 3.  They are not compatible with one another.  There is no official Ubuntu package for libsdl3.
  • Do not follow any advice of people recommending you symlink libSDL3.so or libSDL3.so.0 to libsdl2 or equivalent.  Do not do this.  I cannot stress this enough.
  • The details you'll find talking about how "login anonymous" solves this problem are incorrect and false.  The thread people cross-reference talks about two completely separate problems: one being the libSDL3 library issue, the other being odd behaviours due to an expired Steam token.  The "login anonymous" aspect resolved the expired Steam token, not the libSDL3 problem.
  • If you're using Ubuntu 20.04 LTS, you might find that steamcmd runs for a while and then eventually segfaults (no I'm not kidding).  I have yet to find a workaround for this problem, but plan on testing on Arch Linux where things supposedly Just Work(tm).


It blows my mind that Valve doesn't provide static binaries for SteamCMD.  It would alleviate 95% of problems like this (excluding libc variations).

 
Last edited by a moderator:
Follow-up: haven't tested Arch Linux, but CentOS Stream 9 has the same problem.  It's 100% something Valve should fix, but it's clearly a cosmetic problem.

Code:
[steam@stvz3lyj ~]$ cat /etc/centos-release
CentOS Stream release 9
[steam@stvz3lyj ~]$ uname -a
Linux stvz3lyj.vm 5.14.0-331.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jun 22 15:26:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
...
[----] Update complete, launching Steamcmd...
Redirecting stderr to '/home/steam/Steam/logs/stderr.txt'
[  0%] Checking for available updates...
[----] Verifying installation...
Steam Console Client (c) Valve Corporation - version 1687387651
-- type 'quit' to exit --
Loading Steam API...dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory
dlmopen libSDL3.so.0 failed: libSDL3.so.0: cannot open shared object file: No such file or directory
OK

Connecting anonymously to Steam Public...OK
Waiting for client config...OK
Waiting for user info...OK
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
 Update state (0x11) preallocating, progress: 0.00 (0 / 16050185613)
...
 
Back
Top