Closed PlayBoy31 closed 4 years ago
I'm getting this error on linux as well.
It seems like hl2mp
uses a different version of libstdc++.so.6
in its bin/
directory:
$ apt-get update && apt-get install binutils
$ cd hl2mp_ds/
$ strings bin/libstdc++.so.6 | grep CXXABI_
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3
CXXABI_1.3.2
CXXABI_1.3.1
CXXABI_1.3.5
CXXABI_1.3.4
CXXABI_1.3.3
libstdc++.so.6
on ubuntu 16.04
:
$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep CXXABI_
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_1.3.8
CXXABI_1.3.9
CXXABI_TM_1
CXXABI_FLOAT128
I tried to symlink the OS's libstdc++.so.6
binary within the game's bin/
directory:
$ mv bin/libstdc++.so.6 bin/libstdc++.so.6.bak
$ ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6 bin/libstdc++.so.6
$ ./srcds_linux -game hl2mp -maxplayers 16 +map dm_lockdown
Using Breakpad minidump system. Version: 5394425 AppID: 232370
Setting breakpad minidump AppID = 232370
Using breakpad crash handler
Loaded 11 VPK file hashes from /server/hl2mp/hl2mp_pak.vpk for pure server operation.
Loaded 11 VPK file hashes from /server/hl2mp/hl2mp_pak.vpk for pure server operation.
Loaded 1218 VPK file hashes from /server/hl2/hl2_textures.vpk for pure server operation.
Loaded 574 VPK file hashes from /server/hl2/hl2_sound_vo_english.vpk for pure server operation.
Loaded 383 VPK file hashes from /server/hl2/hl2_sound_misc.vpk for pure server operation.
Loaded 446 VPK file hashes from /server/hl2/hl2_misc.vpk for pure server operation.
Loaded 5 VPK file hashes from /server/platform/platform_misc.vpk for pure server operation.
ConVarRef mat_dxlevel doesn't point to an existing ConVar
server_srv.so loaded for "Half-Life 2 Deathmatch"
[Botrix] Cannot open interface VDebugOverlay003
[Botrix] Looking for configuration file /server/hl2mp/addons/botrix/config.ini
[Botrix] found.
[Botrix] Console log level: info.
[Botrix] Log to file: botrix.log.
[Botrix] File log level: none.
[Botrix] File /server/hl2mp/addons/botrix/config.ini:
Segmentation fault (core dumped)
Also tried exporting LD_LIBRARY_PATH
with the parent directory path of the OS's libraries via the following command and starting the server but with the same results as above:
$ export LD_LIBRARY_PATH=.:/usr/lib/x86_64-linux-gnu:bin
I'm using Botrix v1.0.0
.
Thanks for reporting it guys, I will check it out and will let you know.
Ok, I fixed it in both 1.0.0 and 1.0.1 versions (it is statically linked now), let me know if it works for you.
Getting crashes now on linux for hl2mp
, exit code 139
:
Using Breakpad minidump system. Version: 5394425 AppID: 232370
Setting breakpad minidump AppID = 232370
Using breakpad crash handler
Loaded 11 VPK file hashes from /server/hl2mp/hl2mp_pak.vpk for pure server operation.
Loaded 11 VPK file hashes from /server/hl2mp/hl2mp_pak.vpk for pure server operation.
Loaded 1218 VPK file hashes from /server/hl2/hl2_textures.vpk for pure server operation.
Loaded 574 VPK file hashes from /server/hl2/hl2_sound_vo_english.vpk for pure server operation.
Loaded 383 VPK file hashes from /server/hl2/hl2_sound_misc.vpk for pure server operation.
Loaded 446 VPK file hashes from /server/hl2/hl2_misc.vpk for pure server operation.
Loaded 5 VPK file hashes from /server/platform/platform_misc.vpk for pure server operation.
ConVarRef mat_dxlevel doesn't point to an existing ConVar
server_srv.so loaded for "Half-Life 2 Deathmatch"
[Botrix] Cannot open interface VDebugOverlay003
[Botrix] Looking for configuration file /server/hl2mp/addons/botrix/config.ini
[Botrix] found.
[Botrix] Console log level: info.
[Botrix] Log to file: botrix.log.
[Botrix] File log level: none.
[Botrix] File /server/hl2mp/addons/botrix/config.ini:
Segmentation fault (core dumped)
Load ok for me now on 1.0.1 (linux)
Loaded plugins: 0: "Botrix plugin 1.0.1 (c) 2012 by Borzh. BUILD Apr 26 2020"
Getting crashes now on linux for
hl2mp
, exit code139
:[Botrix] File /server/hl2mp/addons/botrix/config.ini: Segmentation fault (core dumped)
Looks like it tries to show some error in config.ini, but crashes... can you attach it?
Hmm, just tried to launch dedicated server in /server folder, as you have.
Here is what I get in the console:
Using default binary: ./srcds_linux
Server will auto-restart if there is a crash.
ERROR: ld.so: object 'libgtk3-nocsd.so.0' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
Using Breakpad minidump system. Version: 5394425 AppID: 232370
Setting breakpad minidump AppID = 232370
Using breakpad crash handler
Loaded 11 VPK file hashes from /server/hl2mp/hl2mp_pak.vpk for pure server operation.
Loaded 11 VPK file hashes from /server/hl2mp/hl2mp_pak.vpk for pure server operation.
Loaded 1218 VPK file hashes from /server/hl2/hl2_textures.vpk for pure server operation.
Loaded 574 VPK file hashes from /server/hl2/hl2_sound_vo_english.vpk for pure server operation.
Loaded 383 VPK file hashes from /server/hl2/hl2_sound_misc.vpk for pure server operation.
Loaded 446 VPK file hashes from /server/hl2/hl2_misc.vpk for pure server operation.
Loaded 5 VPK file hashes from /server/platform/platform_misc.vpk for pure server operation.
ConVarRef mat_dxlevel doesn't point to an existing ConVar
server_srv.so loaded for "Half-Life 2 Deathmatch"
[Botrix] Cannot open interface VDebugOverlay003
[Botrix] Looking for configuration file /server/hl2mp/addons/botrix/config.ini
[Botrix] found.
[Botrix] Console log level: info.
[Botrix] Log to file: botrix.log.
[Botrix] File log level: info.
[Botrix] File /server/hl2mp/addons/botrix/config.ini:
[Botrix] There is no mod that matches current game (server) & mod (hl2mp) folders.
[Botrix] Using default mod 'HalfLife2Deathmatch'.
[Botrix] Botrix loaded. Current mod: HalfLife2Deathmatch.
I could play without issues with bots, I am using Ubuntu 18.04 LTS.
Let me know your OS details.
I could play without issues with bots, I am using Ubuntu 18.04 LTS.
Let me know your OS details.
Ubuntu 16.04 on docker. The crashes could be due to some missing dependency packages. Seems like v1.0.1
is working well for both of you. I’ll have to look into what’s causing the crashes on my setup.
I don't think the crash is because of some dependency, because the plugin is started, printing [Botrix] messages. If you compare my output with yours, it is crashing printing [Botrix] There is no mod that matches current game (server) & mod (hl2mp) folders.
but I am not sure why...
I've managed to get v1.0.1
working on linux.
It turns out the crashes were due to having too many bot names in the config.ini
file. I was also using v1.0.0
's config.ini
though that wasn't the cause.
I'm not sure what the upper limit is exactly on linux as the crashes seem to occur at about 170+
names of a total 1729
characters including 120
whitespace characters in names. I haven't encountered issues with the same list of 300
names of on Windows though.
Thanks for the help @borzh and @PlayBoy31.
Oh I see, actually I am using a buffer of 2048 characters (2Kb) to read values from config.ini, didn't thought I would need more. Windows also have that problem, not sure why it doesn't crash, it should.
Anyway, thanks for letting me know this, I will use a bigger buffer (thinking about 8k would be okay) and also will truncate line if needed (so plugin wouldn't crash). Will release the fix as soon as possible.
@joeltimothyoh can you attach the config.ini you was using (the one with more bot names is better)?
Okay I've managed to fix that issue, it WAS crashing in Windows also. Now the buffer is 8k and if the config value is more than 8k, the value is getting truncated. I uploaded v1.0.1 with the fix.
Hello,
Tried your plugin but can load: " failed to dlopen /games/steam/servers/hl2mp_ds/hl2mp/addons/botrix.so error=bin/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /games/steam/servers/hl2mp_ds/hl2mp/addons/botrix.so)"
=> apt-get install libstdc++6 Reading package lists... Done Building dependency tree Reading state information... Done libstdc++6 is already the newest version (8.3.0-6). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
same for i386
I think libstdc++ should be statically linked