[GH-ISSUE #2062] TF2 server segfaults on startup in Fedora 28 x86_64 #1607

Closed
opened 2026-02-27 02:58:05 +03:00 by kerem · 3 comments
Owner

Originally created by @vectorsigma on GitHub (Oct 29, 2018).
Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/2062

Describe the bug
In Fedora 28, for Team Fortress 2, replay_srv.so is unable to load, causing segfault and server crash loop in the console. The server will refuse to load.

To Reproduce
Steps to reproduce the behaviour:

  1. download lgsm for tf2 and follow installation instructions in the home directory of a newly created tf2 user.
  2. execute ./tf2server start
  3. execute ./tf2serer console
  4. press enter at the molly guard warning
  5. See the error snippet below:
server_srv.so loaded for "Team Fortress"
Could not load: replay_srv.so
Could not load: replay_srv.so

Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
./srcds_run: line 324:  2506 Segmentation fault      (core dumped) $HL_CMD
Add "-debug" to the ./srcds_run command line to generate a debug.log to help with solving this problem
Sat Oct 27 14:03:29 PDT 2018: Server restart in 10 seconds

Expected behaviour
Server software starts without crashing.

Minimum Information
Running the TF2 game, on Fedora 28, x86_64. Installed fresh on 2018/10/27.

Additional context
Turns out, this is just a simple bug because replay_srv.so is compiled to expect the library to be named libcurl-gnutls.so.4, which the Fedora 28 version of libcurl.i686 doesn't provide, by that exact name. You can solve it as follows: ln -nfs /usr/lib/libcurl.so.4 ~/serverfiles/bin/libcurl-gnutls.so.4 as the user you installed the server as.

Proposed fix in #2063.

Originally created by @vectorsigma on GitHub (Oct 29, 2018). Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/2062 **Describe the bug** In Fedora 28, for Team Fortress 2, `replay_srv.so` is unable to load, causing segfault and server crash loop in the console. The server will refuse to load. **To Reproduce** Steps to reproduce the behaviour: 1. download lgsm for tf2 and follow [installation instructions](https://linuxgsm.com/lgsm/tf2server/) in the home directory of a newly created `tf2` user. 2. execute `./tf2server start` 3. execute `./tf2serer console` 4. press enter at the molly guard warning 5. See the error snippet below: ``` server_srv.so loaded for "Team Fortress" Could not load: replay_srv.so Could not load: replay_srv.so Looking up breakpad interfaces from steamclient Calling BreakpadMiniDumpSystemInit ./srcds_run: line 324: 2506 Segmentation fault (core dumped) $HL_CMD Add "-debug" to the ./srcds_run command line to generate a debug.log to help with solving this problem Sat Oct 27 14:03:29 PDT 2018: Server restart in 10 seconds ``` **Expected behaviour** Server software starts without crashing. **Minimum Information** Running the TF2 game, on Fedora 28, x86_64. Installed fresh on 2018/10/27. **Additional context** Turns out, this is just a simple bug because `replay_srv.so` is compiled to expect the library to be named `libcurl-gnutls.so.4`, which the Fedora 28 version of `libcurl.i686` doesn't provide, by that exact name. You can solve it as follows: `ln -nfs /usr/lib/libcurl.so.4 ~/serverfiles/bin/libcurl-gnutls.so.4` as the user you installed the server as. Proposed fix in #2063.
Author
Owner

@tkrn commented on GitHub (Oct 29, 2018):

On RHEL 7.5, I had the same issue.

[tkrn@lanserv:~]$uname -a
Linux lanserv.party.lan 3.10.0-862.14.4.el7.x86_64 #1 SMP Fri Sep 21 09:07:21 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

[tkrn@lanserv:~]$cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.5 (Maipo)

The following fix resolved the segfault.

ln -s /usr/lib/libcurl.so.4 /home/tf2server/serverfiles/bin/libcurl-gnutls.so.4

After this, it resolved the issue. Please note that on RHEL 7.5 libcurl.so.4 is a default symlink to libcurl.so.4.3.0 which is provided in the 'libcurl' package in the yum repo.

[tkrn@lanserv:~]$ls -lah /usr/lib | grep libcurl
lrwxrwxrwx.  1 root root   16 Jul 30 14:05 libcurl.so.4 -> libcurl.so.4.3.0
-rwxr-xr-x.  1 root root 424K Dec 14  2017 libcurl.so.4.3.0

Just adding a second person confirming the fix.

<!-- gh-comment-id:434040783 --> @tkrn commented on GitHub (Oct 29, 2018): On RHEL 7.5, I had the same issue. ``` [tkrn@lanserv:~]$uname -a Linux lanserv.party.lan 3.10.0-862.14.4.el7.x86_64 #1 SMP Fri Sep 21 09:07:21 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux [tkrn@lanserv:~]$cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.5 (Maipo) ``` The following fix resolved the segfault. `ln -s /usr/lib/libcurl.so.4 /home/tf2server/serverfiles/bin/libcurl-gnutls.so.4` After this, it resolved the issue. Please note that on RHEL 7.5 libcurl.so.4 is a default symlink to libcurl.so.4.3.0 which is provided in the 'libcurl' package in the yum repo. ``` [tkrn@lanserv:~]$ls -lah /usr/lib | grep libcurl lrwxrwxrwx. 1 root root 16 Jul 30 14:05 libcurl.so.4 -> libcurl.so.4.3.0 -rwxr-xr-x. 1 root root 424K Dec 14 2017 libcurl.so.4.3.0 ``` Just adding a second person confirming the fix.
Author
Owner

@dgibbs64 commented on GitHub (Nov 1, 2018):

Issue now merged

<!-- gh-comment-id:434992856 --> @dgibbs64 commented on GitHub (Nov 1, 2018): Issue now merged
Author
Owner

@lock[bot] commented on GitHub (Nov 1, 2019):

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

<!-- gh-comment-id:548740065 --> @lock[bot] commented on GitHub (Nov 1, 2019): This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Sign in to join this conversation.
No labels
Atomic
Epic
cannot reproduce
command: backup
command: console
command: debug
command: details
command: fast-dl
command: install
command: mods
command: monitor
command: post-details
command: restart
command: send
command: start
command: stop
command: update
command: update-lgsm
command: validate
command: wipe
distro: AlmaLinux
distro: Arch Linux
distro: CentOS
distro: Debian
distro: Fedora
distro: RedHat
distro: Rocky Linux
distro: Ubuntu
distro: openSUSE
engine: goldsrc
engine: source
game: 7 Days to Die
game: ARMA 3
game: Ark: Survival Evolved
game: Assetto Corsa
game: Avorion
game: BATTALION: Legacy
game: Barotrauma
game: Battalion 1944
game: Battlefield 1942
game: Black Mesa: Deathmatch
game: Blade Symphony
game: Call of Duty 2
game: Call of Duty 4
game: Call of Duty: United Offensive
game: Counter-Strike 1.6
game: Counter-Strike 2
game: Counter-Strike: Global Offensive
game: Counter-Strike: Source
game: Day of Infamy
game: Dayz
game: Death Match Classic
game: Don't Starve Together
game: ET: Legacy
game: Eco
game: Factorio
game: Factorio
game: Garry's Mod
game: Half-Life
game: Hurtword
game: Insurgecy
game: Insurgecy
game: Insurgency: Sandstorm
game: Just Cause 3
game: Killing Floor
game: Killing Floor 2
game: Left 4 Dead 2
game: Minecraft
game: Minecraft Bedrock
game: Mordhau
game: Multi Theft Auto
game: Mumble
game: Natural Selection 2
game: No More Room in Hell
game: Pavlov VR
game: Post Scriptum
game: Project Zomboid
game: Quake 3
game: QuakeWorld
game: Red Orchestra: Ostfront 41-45
game: Return to Castle Wolfenstein
game: Rising World
game: Rust
game: San Andreas Multiplayer
game: Satisfactory
game: Soldat
game: Soldier of Fortune 2
game: Squad
game: Squad 44
game: Starbound
game: Stationeers
game: Sven Co-op
game: Team Fortress 2
game: Teamspeak 3
game: Teeworlds
game: Terraria
game: The Front
game: Unreal Tournament 2004
game: Unreal Tournament 3
game: Unreal Tournament 99
game: Unturned
game: Valheim
game: Wurm Unlimited
game: Zombie Master Reborn
game: label missing
good first issue
help wanted
info: alerts
info: dependency
info: docker
info: docs
info: email
info: query
info: steamcmd
info: systemd
info: tmux
info: website
info: website
needs more info
outcome: duplicate
outcome: issue resolved
outcome: issue resolved
outcome: issue unresolved
outcome: pr accepted
outcome: pr rejected
outcome: unconfirmed
outcome: wontfix
outcome: wrong forum
potential-duplicate
priority
pull-request
type: bug
type: feature
type: feature
type: feature request
type: game server request
type: refactor
waiting response
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/LinuxGSM#1607
No description provided.