CM2Walki / steamcmd

Minimal image containing Valve's SteamCMD binary: https://hub.docker.com/r/cm2network/steamcmd/

Home Page:https://CM2.Network

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory

henaff opened this issue · comments

Problem:

When running the Docker container for cm2network/steamcmd:latest, I'm encountering an issue related to a missing shared object file steamservice.so.

Steps to Reproduce:

  1. Pulled the cm2network/steamcmd:latest image: docker pull cm2network/steamcmd:latest
  2. Ran the container with entrypoint as /bin/sh: docker run --entrypoint /bin/sh -it cm2network/steamcmd:latest
  3. Executed steamcmd.

Expected Behavior:

I expect steamcmd to launch successfully without any errors.

Actual Behavior:

Received the following error message:

dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory

Environment:

  • OS: Ubuntu 20
  • Docker version: 24.0.6
  • Image: cm2network/steamcmd:latest

Logs:

root@m23322:~# docker run -it --name=steamcmd cm2network/steamcmd bash
Unable to find image 'cm2network/steamcmd:latest' locally
latest: Pulling from cm2network/steamcmd
7dbc1adf280e: Pull complete
6d8b5674a23a: Pull complete
4f4fb700ef54: Pull complete
Digest: sha256:5393e26248e593a7ab2fdd67f4a9ae7dc6ada421a7c38fa9cdb3afc72cf8d8a8
Status: Downloaded newer image for cm2network/steamcmd:latest
steam@09436ea6520b:~/steamcmd$ steamcmd
bash: steamcmd: command not found
steam@09436ea6520b:~/steamcmd$ ll
bash: ll: command not found
steam@09436ea6520b:~/steamcmd$ ls
linux32  linux64  package  public  siteserverui  steam.sh  steamcmd.sh
steam@09436ea6520b:~/steamcmd$ ./steamcmd.sh
Redirecting stderr to '/home/steam/Steam/logs/stderr.txt'
Logging directory: '/home/steam/Steam/logs'
[  0%] Checking for available updates...
[----] Verifying installation...
Steam Console Client (c) Valve Corporation - version 1696019544
-- type 'quit' to exit --
Loading Steam API...dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory
OK

Steam>

Additional Context:

/root/Steam/logs/stderr.txt is empty

This error can generally be ignored:

dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory

This part of your log indicates that steamcmd has started successfully:

Steam>

The error came back at the end of a downloaded game. Then it fails the data validation.

Also, the error occurs on CS2 server launch and cause segmentation fault.

I found a valve precision about this issue. It's not from your docker files sorry.

The given workaround was:

ln -s /home/your_user/.local/share/Steam/steamcmd/linux64/steamclient.so /home/your_user/.steam/sdk64/
ln -s /home/your_user/.local/share/Steam/steamcmd/linux32/steamclient.so /home/your_user/.steam/sdk32/

For me, it was:

mkdir /home/your_user/.steam/sdk64/
mkdir /home/your_user/.steam/sdk32/
ln -s /home/your_user/.steam/steamcmd/linux64/steamclient.so /home/your_user/.steam/sdk64/
ln -s /home/your_user/.steam/steamcmd/linux32/steamclient.so /home/your_user/.steam/sdk32/

https://developer.valvesoftware.com/wiki/Counter-Strike_2/Dedicated_Servers

I'm having trouble replicating this. steamclient.so is already being correctly symlinked in this repository. How does a steamclient.so symlink fix the executable not finding steamservice.so?

The warning has been suppressed.