Linuxgsm: [TeeWorld Server, Linux Debian] Install Error

Created on 29 Jan 2017  Â·  41Comments  Â·  Source: GameServerManagers/LinuxGSM

Hello Guys,

i have a Problem, because it try to Install TeeWorld Server, all fine, but i cant start because this error:

twserver@Debian-86-jessie-64-LAMP:~$ ./twserver start [ FAIL ] Starting tw-server: Executable teeworlds_srv was not found twserver@Debian-86-jessie-64-LAMP:~$

But the File "twserver_srv" is on folder /serverfiles/tw)
Whats wrong with that -.-

And if i try it to start manually with "./teeworlds_srv" i got this error

./teeworlds_srv ./teeworlds_srv: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: versionCXXABI_1.3.9' not found (required by ./teeworlds_srv)
`

And if i try to install the libary with "apt-get install libstdc++" i got this error

apt-get install libstdc++
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'libstdc++-4.8-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.5-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++-5-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.4-doc' for regex 'libstdc+'
Note, selecting 'libstdc++-arm-none-eabi-newlib' for regex 'libstdc+'
Note, selecting 'libstdc++5-3.3-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++-4.9-dev' for regex 'libstdc+'
Note, selecting 'libstdc++-4.8-doc' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.0-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.6-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.6-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.5-doc' for regex 'libstdc+'
Note, selecting 'libstdc++-4.9-doc' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.1-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.7-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++5-3.3-doc' for regex 'libstdc+'
Note, selecting 'pd-libstdcpp' for regex 'libstdc+'
Note, selecting 'libstdc++5-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++3.0-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.7-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.0-doc' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.6-doc' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.2-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.8-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++6-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.1-doc' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.7-doc' for regex 'libstdc+'
Note, selecting 'libstdc++-dev' for regex 'libstdc+'
Note, selecting 'libstdc++2.8-dev' for regex 'libstdc+'
Note, selecting 'libstdc++5-doc' for regex 'libstdc+'
Note, selecting 'libstdc++-4.8-pic' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.3-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.9-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++2.10-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.2-doc' for regex 'libstdc+'
Note, selecting 'libstdc++2.9-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-doc' for regex 'libstdc+'
Note, selecting 'libstdc++-4.9-pic' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.4-dbg' for regex 'libstdc+'
Note, selecting 'libstdc++5' for regex 'libstdc+'
Note, selecting 'libstdc++6' for regex 'libstdc+'
Note, selecting 'libstdc++2.9-glibc2.1-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.4-dev' for regex 'libstdc+'
Note, selecting 'libstdc++6-4.3-doc' for regex 'libstdc+'
libstdc++-4.9-dev is already the newest version.
libstdc++-4.9-dev set to manually installed.
libstdc++6 is already the newest version.
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
libstdc++-4.9-doc : Conflicts: libstdc++-4.8-doc but 4.8.4-1 is to be installed
libstdc++6-4.9-dbg : Conflicts: libstdc++6-4.8-dbg but 4.8.4-1 is to be install ed
E: Unable to correct problems, you have held broken packages.

And if i intall the libstdc++6 all is fine

apt-get install libstdc++6
Reading package lists... Done
Building dependency tree
Reading state information... Done
libstdc++6 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

bug

Most helpful comment

The change was done in order to unify the directories over all three operating systems, on macOS we somehow need to be able to put stuff in the parent directory. I didn't know that there were scripts depending on this location, otherwise I might have provided a wrapper script at the old location.

It would be also nice to know why we have to login into SteamCMD. Why don't provide an anonymous login for a free game?

I don't know how to do that. I'll try to find out, if you have any hints, please share them. :) In the meanwhile, you can always download the binaries from https://www.teeworlds.com/?page=downloads, they should be exactly the same as you get from Steam.

All 41 comments

Hey there, thanks for reporting.

I tried installing the server, I can say that for the LGSM part, directories are now wrong, probably due to an update. Executable is now in serverfiles/tw, so this needs to be corrected.
https://github.com/GameServerManagers/LinuxGSM/blob/master/Teeworlds/twserver#L101-L108

For the rest, i get the same issue as you after correcting paths, so... needs more investigation.

Developer notes

````
ultimatebyte@game:~$ ./twserver dl

fetching command_dev_detect_ldd.sh...OK

Shared Object dependencies Checker

Checking directory:
/home/ultimatebyte/serverfiles

504 / 519

All

/home/ultimatebyte/serverfiles/tw/teeworlds
/home/ultimatebyte/serverfiles/tw/teeworlds: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version CXXABI_1.3.9' not found (required by /home/ultimatebyte/serverfiles/tw/teeworlds) linux-vdso.so.1 (0x00007ffe07350000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f969863b000) libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f96982f8000) libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007f969805e000) libGLU.so.1 => not found libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f9697db4000) libSDL-1.2.so.0 => not found libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f9697aa9000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f96977a8000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f9697592000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f96971e7000) /lib64/ld-linux-x86-64.so.2 (0x00007f9698858000) libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f9696fc5000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f9696dc1000) libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f9696b98000) libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007f969696e000) libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f969675c000) libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f9696559000) libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f9696353000) libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f9696151000) libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007f9695f38000) libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007f9695d33000) libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007f9695b30000) libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007f969592d000) libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007f9695726000) libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007f9695524000) libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f969531e000) libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f9695111000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f9694ef6000) libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007f9694ccf000) libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f9694acb000) libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f96948c6000) /home/ultimatebyte/serverfiles/tw/teeworlds_srv /home/ultimatebyte/serverfiles/tw/teeworlds_srv: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: versionCXXABI_1.3.9' not found (required by /home/ultimatebyte/serverfiles/tw/teeworlds_srv)
linux-vdso.so.1 (0x00007ffc38b50000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fee5b81e000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fee5b513000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fee5b212000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fee5affc000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fee5ac51000)
/lib64/ld-linux-x86-64.so.2 (0x00007fee5ba3b000)

Not Found

/home/ultimatebyte/serverfiles/tw/teeworlds
/home/ultimatebyte/serverfiles/tw/teeworlds: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version CXXABI_1.3.9' not found (required by /home/ultimatebyte/serverfiles/tw/teeworlds) libGLU.so.1 => not found libSDL-1.2.so.0 => not found /home/ultimatebyte/serverfiles/tw/teeworlds_srv /home/ultimatebyte/serverfiles/tw/teeworlds_srv: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: versionCXXABI_1.3.9' not found (required by /home/ultimatebyte/serverfiles/tw/teeworlds_srv)
````

````
ultimatebyte@game:~$ ./twserver dd
fetching command_dev_detect_deps.sh...OK

Required Dependencies

./teeworlds_srv

CentOS

yum install glibc.i686 libstdc++.i686

Ubuntu

apt-get install lib32gcc1 libstdc++6:i386

Debian

apt-get install lib32gcc1 libstdc++6:i386

Required Librarys

libc.so.6
libgcc_s.so.1
libm.so.6
libpthread.so.0
libstdc++.so.6

ldd

./teeworlds_srv: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by ./teeworlds_srv)
linux-vdso.so.1 (0x00007ffe1757c000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ff904cb1000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007ff9049a6000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007ff9046a5000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007ff90448f000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff9040e4000)
/lib64/ld-linux-x86-64.so.2 (0x00007ff904ece000)
````

````
ultimatebyte@game:~$ ./twserver dg

fetching command_dev_detect_glibc.sh...OK

GLIBC Requirements Checker

Checking directory:
/home/ultimatebyte/serverfiles

504 / 519
GLIBC_2.14
GLIBC_2.3
GLIBC_2.2.5
GLIBCXX_3.4
````

Hey Ulti and thx for fast reply :)

so... i have edit the twserver file with that

executable="/serverfiles/tw/teeworlds_srv"

But nothing happens. I know its wrong because default is -> executable="./teeworlds_srv" <- so what i need to write in there.

Other thing is, i test any ways to run the server and the only way is without LGSM and only 32bit. I dont know why 64bit not working but its recommned to paste in the LGSM-Service the 32bit version from teeworld. That works perfectly.

And the rest... puh idk i test it longer than 5 hours and at the moment i dont have any motivations to make more ^^ :D fu*k off teeworld... -.-

Now i test it wit hthe libarys what du u have write me and if it not works i give up and delete that shit ^^

So thanks for the Awesome Support and i hope LGSM lifes long and stable :) great system

Thats my twserver dl log, maybe it helps you

twserver@Debian-86-jessie-64-LAMP:~$ ./twserver start
[ FAIL ] Starting tw-server: Executable teeworlds_srv was not found
twserver@Debian-86-jessie-64-LAMP:~$ ./twserver dl

fetching command_dev_detect_ldd.sh...OK

Shared Object dependencies Checker

Checking directory:
/home/twserver/serverfiles

523 / 544

All

/home/twserver/serverfiles/tw/teeworlds_srv
/home/twserver/serverfiles/tw/teeworlds_srv: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version CXXABI_1.3.9' not found (required by /home/twserver/serverfiles/tw/teeworlds_srv) linux-vdso.so.1 (0x00007ffe13ee8000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f43dea72000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f43de767000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f43de466000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f43de250000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f43ddea5000) /lib64/ld-linux-x86-64.so.2 (0x00007f43dec8f000) /home/twserver/serverfiles/tw/teeworlds /home/twserver/serverfiles/tw/teeworlds: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: versionCXXABI_1.3.9' not found (required by /home/twserver/serverfiles/tw/teeworlds)
linux-vdso.so.1 (0x00007ffcd4b44000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f8d086e6000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f8d083a3000)
libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007f8d08109000)
libGLU.so.1 => /usr/lib/x86_64-linux-gnu/libGLU.so.1 (0x00007f8d07e9b000)
libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f8d07bf1000)
libSDL-1.2.so.0 => /usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0 (0x00007f8d07955000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f8d0764a000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f8d07349000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f8d07133000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f8d06d88000)
/lib64/ld-linux-x86-64.so.2 (0x00007f8d08903000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f8d06b66000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f8d06962000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f8d06739000)
libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007f8d0650f000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f8d062fd000)
libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f8d060fa000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f8d05ef4000)
libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f8d05cf2000)
libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007f8d05ad9000)
libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007f8d058d4000)
libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007f8d056d1000)
libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007f8d054ce000)
libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007f8d052c7000)
libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007f8d050c5000)
libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f8d04ebf000)
libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f8d04cb2000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f8d04a97000)
libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007f8d04870000)
libasound.so.2 => /usr/lib/x86_64-linux-gnu/libasound.so.2 (0x00007f8d04578000)
libpulse-simple.so.0 => /usr/lib/x86_64-linux-gnu/libpulse-simple.so.0 (0x00007f8d04373000)
libpulse.so.0 => /usr/lib/x86_64-linux-gnu/libpulse.so.0 (0x00007f8d04122000)
libdirectfb-1.2.so.9 => /usr/lib/x86_64-linux-gnu/libdirectfb-1.2.so.9 (0x00007f8d03e9d000)
libfusion-1.2.so.9 => /usr/lib/x86_64-linux-gnu/libfusion-1.2.so.9 (0x00007f8d03c93000)
libdirect-1.2.so.9 => /usr/lib/x86_64-linux-gnu/libdirect-1.2.so.9 (0x00007f8d03a7b000)
libcaca.so.0 => /usr/lib/x86_64-linux-gnu/libcaca.so.0 (0x00007f8d037af000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f8d035ab000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f8d033a6000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f8d0319e000)
libpulsecommon-5.0.so => /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-5.0.so (0x00007f8d02f24000)
libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x00007f8d02d1f000)
libjson-c.so.2 => /lib/x86_64-linux-gnu/libjson-c.so.2 (0x00007f8d02b14000)
libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f8d028cc000)
libslang.so.2 => /lib/x86_64-linux-gnu/libslang.so.2 (0x00007f8d0253c000)
libncursesw.so.5 => /lib/x86_64-linux-gnu/libncursesw.so.5 (0x00007f8d02306000)
libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f8d020dc000)
libICE.so.6 => /usr/lib/x86_64-linux-gnu/libICE.so.6 (0x00007f8d01ebf000)
libSM.so.6 => /usr/lib/x86_64-linux-gnu/libSM.so.6 (0x00007f8d01cb7000)
libXtst.so.6 => /usr/lib/x86_64-linux-gnu/libXtst.so.6 (0x00007f8d01ab1000)
libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007f8d0188d000)
libwrap.so.0 => /lib/x86_64-linux-gnu/libwrap.so.0 (0x00007f8d01682000)
libsndfile.so.1 => /usr/lib/x86_64-linux-gnu/libsndfile.so.1 (0x00007f8d01419000)
libasyncns.so.0 => /usr/lib/x86_64-linux-gnu/libasyncns.so.0 (0x00007f8d01213000)
libattr.so.1 => /lib/x86_64-linux-gnu/libattr.so.1 (0x00007f8d0100e000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f8d00e09000)
libXi.so.6 => /usr/lib/x86_64-linux-gnu/libXi.so.6 (0x00007f8d00bf9000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f8d009d6000)
libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f8d006f4000)
libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f8d004dd000)
libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007f8d002c5000)
libFLAC.so.8 => /usr/lib/x86_64-linux-gnu/libFLAC.so.8 (0x00007f8d00092000)
libvorbisenc.so.2 => /usr/lib/x86_64-linux-gnu/libvorbisenc.so.2 (0x00007f8cffddf000)
libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f8cffbcd000)
libogg.so.0 => /usr/lib/x86_64-linux-gnu/libogg.so.0 (0x00007f8cff9c4000)
libvorbis.so.0 => /usr/lib/x86_64-linux-gnu/libvorbis.so.0 (0x00007f8cff797000)

Not Found

/home/twserver/serverfiles/tw/teeworlds_srv
/home/twserver/serverfiles/tw/teeworlds_srv: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version CXXABI_1.3.9' not found (required by /home/twserver/serverfiles/tw/teeworlds_srv) /home/twserver/serverfiles/tw/teeworlds /home/twserver/serverfiles/tw/teeworlds: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: versionCXXABI_1.3.9' not found (required by /home/twserver/serverfiles/tw/teeworlds)
twserver@Debian-86-jessie-64-LAMP:~$

And thats my dg log, it the same as you :)

twserver@Debian-86-jessie-64-LAMP:~$ ./twserver dg

fetching command_dev_detect_glibc.sh...OK

GLIBC Requirements Checker

Checking directory:
/home/twserver/serverfiles

523 / 544
GLIBC_2.14
GLIBC_2.3
GLIBC_2.2.5
GLIBCXX_3.4
twserver@Debian-86-jessie-64-LAMP:~$

and thats my brocken DD-Log :D

twserver@Debian-86-jessie-64-LAMP:~$ ./twserver dd
fetching command_dev_detect_deps.sh...OK
readelf: Error: '/serverfiles/tw/teeworlds_srv': No such file
sort: cannot read: /home/twserver/lgsm/tmp/.depdetect_centos_list: No such file or directory
sort: cannot read: /home/twserver/lgsm/tmp/.depdetect_ubuntu_list: No such file or directory
sort: cannot read: /home/twserver/lgsm/tmp/.depdetect_debian_list: No such file or directory

Required Dependencies

/serverfiles/tw/teeworlds_srv

CentOS

yum install

Ubuntu

apt-get install

Debian

apt-get install

Required Librarys

ldd

ldd: /serverfiles/tw/teeworlds_srv: No such file or directory

twserver@Debian-86-jessie-64-LAMP:~$

I wish you a nice day, a good night and thx for youre awesome support :)

omg i dont know why the post is edited so big oO i dont make it, so sorry -.-

Because you used quotation instead of code form and the # sign gets expanded into titles.

Your directories edition is wrong. Correct one is:

## Server Specific Directories
systemdir="${filesdir}"
executabledir="${filesdir}/tw"
executable="./teeworlds_srv"
servercfg="${servicename}.cfg" # Teeworlds can also auto load any config if an autoexec.cfg file is present in the server dir
servercfgdefault="server.cfg"
servercfgdir="${filesdir}/tw"
servercfgfullpath="${servercfgdir}/${servercfg}"

ah ok ^^
Na thats default with that i got the error because twserver file is in main folder and teeworlds_srv is in /serverfiles/tw. So what can i make?

That's not the default. That's the fixed paths. Have a second look.

Hand on fixing the issue. Might be similar to Rust fix.
http://stackoverflow.com/questions/20357033/how-to-fix-program-name-usr-lib-x86-64-linux-gnu-libstdc-so-6-version-cxx

Ok i have change it and it works but i got the next problem -.-

twserver@Debian-86-jessie-64-LAMP:~$ nano twserver
twserver@Debian-86-jessie-64-LAMP:~$ ./twserver start
[ WARN ] Starting tw-server: Configuration file missing!
/home/twserver/serverfiles/tw/tw-server.cfg

Downloading Teeworlds Config
=================================
default configs from https://github.com/GameServerManagers/Game-Server-Configs
copying server.cfg config file.
‘/home/twserver/lgsm/default-configs/server.cfg’ -> ‘/home/twserver/serverfiles/tw/tw-server.cfg’
copying ctf.cfg config file.
‘/home/twserver/lgsm/default-configs/ctf.cfg’ -> ‘/home/twserver/serverfiles/tw/ctf.cfg’
copying dm.cfg config file.
‘/home/twserver/lgsm/default-configs/dm.cfg’ -> ‘/home/twserver/serverfiles/tw/dm.cfg’
copying duel.cfg config file.
‘/home/twserver/lgsm/default-configs/duel.cfg’ -> ‘/home/twserver/serverfiles/tw/duel.cfg’
copying tdm.cfg config file.
‘/home/twserver/lgsm/default-configs/tdm.cfg’ -> ‘/home/twserver/serverfiles/tw/tdm.cfg’
changing hostname.
changing rcon/admin password.
    fetching logs.sh...OK
failed to connect to server: Connection refused
[ FAIL ] Starting tw-server: Unable to start LinuxGSM
twserver@Debian-86-jessie-64-LAMP:~$ ./twserver start
[ .... ] Starting tw-server: failed to connect to server: Connection refused
[ FAIL ] Starting tw-server: Unable to start LinuxGSM
twserver@Debian-86-jessie-64-LAMP:~$


Edit the twserver script as indicated here. If that fixes it, please report back.

As I said, there is an LGSM issue + a game issue related to libraries.

I think @heinrich5991 is one of the developers of it on Steam. Maybe he can us tell more about this change? I seriously don't know why the file structure was changed. Was it unintended? It really doesn't look nice. A serverfiles directory containing a "steamapps" and "tw" folder.. It would be also nice to know why we have to login into SteamCMD. Why don't provide an anonymous login for a free game?

I hope he gets notified and we get an answer from him. Otherwise we could create an issue over at https://github.com/teeworlds/teeworlds

The server is working for me on Ubuntu 16.04.1 LTS x86_64 (4.4.0-31-generic) with executabledir="${filesdir}/tw".

The change was done in order to unify the directories over all three operating systems, on macOS we somehow need to be able to put stuff in the parent directory. I didn't know that there were scripts depending on this location, otherwise I might have provided a wrapper script at the old location.

It would be also nice to know why we have to login into SteamCMD. Why don't provide an anonymous login for a free game?

I don't know how to do that. I'll try to find out, if you have any hints, please share them. :) In the meanwhile, you can always download the binaries from https://www.teeworlds.com/?page=downloads, they should be exactly the same as you get from Steam.

@heinrich5991 thanks for your reply. I am amending the location now. Its quite an easy change for me to make. Sadly I do not know how to use the anonymous feature in SteamCMD. However there are a bunch of game developers that use anonymous login and im sure they would help. Games like Empires, Fistful of Frags, No More Room in Hell, Insurgency to name a few. Im sure if you contact one of them they could point you in the right direction.

Debian, fresh game server install, dependencies installed OK:

./teeworlds_srv: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by ./teeworlds_srv)

Which Debian?

@heinrich5991 Debian 8.7 x64. Tried on both my home gameserver (original Debian installed by hand) and webserver with an OVH template. Exact same issue.
Installed GLIBC is the latest available: 2.19

Machine & install details here: https://hastebin.com/ekabudaxun

If it can help:

````
root@webserver:/usr/lib/x86_64-linux-gnu# strings libstdc++.so.6 | grep GLIBC
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBC_2.3
GLIBC_2.2.5
GLIBC_2.14
GLIBC_2.18
GLIBC_2.17
GLIBC_2.3.2
GLIBCXX_DEBUG_MESSAGE_LENGTH

And i forgot, probably more relevant to the issue:

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
````

So what I get is my CXXABI version is slightly too old (1.3.8 for expected 1.3.9). I never had this exact issue before with any other game server. Using too new compilers in TeeWorlds's dev team?
Remember that it's good to allow for a bit older libraries for older distros. Especially when even some popular distro (here my beloved Debian) don't have native access to newer ones yet.

Here's what I get on my Ubuntu box:

root@cia-scanner:~# 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
root@cia-scanner:~# uname -r
4.4.0-38-generic
root@cia-scanner:~# cat /etc/issue
Ubuntu 16.04.2 LTS \n \l

Can you try this archive? https://heinrich5991.de/teeworlds/temp/temp2/teeworlds-0.6.4-linux_x86_64.tar.gz If it works, I'll update the Steam and teeworlds.com distribution.

@heinrich5991 Good job, it appears to work. :)

https://hastebin.com/ijejoziyuk.md

@heinrich5991 ++
(Karma increase granted.)

Thumbs up for relevant console output though.

However, i'm concerned about these errors:

Maybe our cfg files need revision.

I don't there ever was a sv_vote_map, but addvote is now add_vote "<displayed string>" "<command>", e.g. add_vote "Map: dm1" "change_map dm1"

I kinda corrected the config. The votes for switching gamemodes won't work as long as we don't fix the servercfgdir & decide where we will put them. (some thoughts about that in the discord dev channel)

@heinrich5991
I asked JonnyBoy0719, a developer of BrainBread 2, about the anonymous login:

To have anonymous login you have to create a Tool AppID, not a gameID. Todo so, if you are a developer for that certain game, you need to login into SteamWorks and create a "Tool" for it, or contact Valve about it.

@heinrich5991 Any release date for ther Steam Version ? :D

Hmm, the Steam version should be fixed, I pushed the updates on 2017-02-22, roughly a week ago. The sha256sum of my local Steam version of Teeworlds (downloaded like everyone else too) and my link above matches:

$ sha256sum teeworlds_srv ~/.steam/steam/SteamApps/common/Teeworlds/tw/teeworlds_srv 
2f9be69a7f2efa5dea470119ef58b411685486a9eae380ceccb8cc3befcd103e  teeworlds_srv
2f9be69a7f2efa5dea470119ef58b411685486a9eae380ceccb8cc3befcd103e  /home/hein/.steam/steam/SteamApps/common/Teeworlds/tw/teeworlds_srv

You said that the version from the tar above worked for you, is that also true for the Steam version? What sha256sums do you see? Maybe you could ask the issue reporter in #1349 for the sha256sum too?

@heinrich5991 For my part, I only tested your archive's version which was working for me, so if you're saying you pushed it to SteamCMD repo, then it's Solved for Debian 8.

However, it appears to not be solved for CentOS 7 that has again, a bit older libraries. See #1349
That's why it's kinda dangerous to use too fresh libs for compilations.
It makes sense: Ubuntu is the early adopter updates, Debian waits until it's recognized as very stable stable, and CentOS isn't intended to in the package rush at all and is a bit late at the party for game servers. Still, I know that there are many CentOS game servers out there, so a fix would probably be very appreciated for them.

According to the reporter in #1349, my temporary upload worked. https://github.com/GameServerManagers/LinuxGSM/issues/1349#issuecomment-283919733

Well, that's why i was kinda lost. I thought the new version wasn't uploaded yet. Maybe he did it on an old install or something ?

Currently not working in CentOS

[root@steamsrv tw]# sha256sum teeworlds_srv 
1ce85a09849d548ca319e28566dba6d1a9513e030a5656046bfaa60a2f9e3c8a  teeworlds_srv

The file from your archive (https://heinrich5991.de/teeworlds/temp/temp2/teeworlds-0.6.4-linux_x86_64.tar.gz) which works

[root@steamsrv teeworlds-0.6.4-linux_x86_64]# sha256sum teeworlds_srv 
2f9be69a7f2efa5dea470119ef58b411685486a9eae380ceccb8cc3befcd103e  teeworlds_srv

Haven't tried the version from Steam. If you need to - I can try.

@UltimateByte It would be great, if you could make some fix for the CentOS servers, because there are really many hostings which use it for game servers. It would be very appreciated. Can take part in some testing, if you need some support.

@UltimateByte When does GSM update the Steam applications? It looks like this one wasn't updated.

@iVenom999
Teeworlds dirs have been fixed (so we should close this issue)
https://github.com/GameServerManagers/LinuxGSM/commit/b30e49b8bf42df7cb280410696bc56505382aa2b#diff-19f1bb4b1bcdeaa4f15f6e1adbe3217a

@heinrich5991 Users just have to run the update command (cronjobs work as well).
However, if version number didn't change, then the update will not occur since LGSM checks for version number reported by SteamCMD in order to apply the update only when there is one. In that case (which is usually very unlikely since SteamCMD build numbers should change upon any update), the force-update or validate command should be used instead.
https://github.com/GameServerManagers/LinuxGSM/wiki/Update
https://github.com/GameServerManagers/LinuxGSM/wiki/force-update
https://github.com/GameServerManagers/LinuxGSM/wiki/validate

Closing this issue, since server dirs have been fixed into LGSM 13 days ago.
Follow #1349 for @iVenom999 feedback on a fresh install.

Fresh install works flawless!!! Good job!

Checksum from fresh Steam install is

[twserver@steamsrv]:~/serverfiles/tw$ sha256sum teeworlds_srv 
2f9be69a7f2efa5dea470119ef58b411685486a9eae380ceccb8cc3befcd103e  teeworlds_srv

@UltimateByte
The issue is solved, you can close it. Thanks guys!

@UltimateByte
By the way isn't it an eternal recursion ?

[twserver@steamsrv]:~/log$ pwd
/home/twserver/log
[twserver@steamsrv]:~/log$ ls -la server/
total 0
drwxrwxr-x. 2 twserver twserver 19 Mar  3 21:32 .
drwxrwxr-x. 5 twserver twserver 46 Mar  3 21:31 ..
lrwxrwxrwx. 1 twserver twserver 25 Mar  3 21:32 server -> /home/twserver/log/server

And another one issue: a file called <logfile>

[twserver@steamsrv]:~/serverfiles/tw$ ll
total 1420
drwxrwxr-x. 10 twserver twserver   4096 Mar  3 21:34 data
-rwxrwxr-x.  1 twserver twserver   1279 Mar  3 21:34 license.txt
-rw-rw-r--.  1 twserver twserver    998 Mar  3 21:35 <logfile>
-rwxrwxr-x.  1 twserver twserver    356 Mar  3 21:34 readme.txt
-rwxrwxr-x.  1 twserver twserver    862 Mar  3 21:34 storage.cfg
-rwxrwxr-x.  1 twserver twserver 983226 Mar  3 21:34 teeworlds
-rwxrwxr-x.  1 twserver twserver 445684 Mar  3 21:34 teeworlds_srv

I guess the file is called <logfile>? Use backticks (`) to produce a code block.

Yes. Thanks for the tip.

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.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

dgibbs64 picture dgibbs64  Â·  3Comments

jaredstone1982 picture jaredstone1982  Â·  3Comments

borzaka picture borzaka  Â·  3Comments

pavelhoral picture pavelhoral  Â·  3Comments

UltimateByte picture UltimateByte  Â·  4Comments