1. Hey Guest, is it this your first time on the forums?

    Visit the Beginner's Box

    Introduce yourself, read some of the ins and outs of the community, access to useful links and information.

    Dismiss Notice

Dedicated Server No Longer Starts on CentOS After Recent Update

Discussion in 'Archive' started by elricsfate, Nov 3, 2013.

  1. elricsfate

    elricsfate Catapult Fodder

    Messages:
    27
    Category: KAG Server
    Operating system: Linux (CentOS 6)
    Build number: Latest
    Description: Dedicated server will not startup after updating to latest version. Attempted on my existing install and a completely fresh install. Both give the below errors

    Code:
    [kag@server kagbeta-linux32-dedicated]$ ./KAGdedi
    PID: 18786
    Starting in directory: /home/kag/kagbeta-linux32-dedicated
    Changed directory to: /home/kag/kagbeta-linux32-dedicated/
    Engine (build: 929 version: 0.9b)
    Downloading checksums from http://update.kag2d.com/1/linux32-dedicated-release/A                                                                                                                                                            pp/version.txt
    
    Downloading http://update.kag2d.com/1/linux32-dedicated-release/App/version.txt.                                                                                                                                                            ..
      % Total    % Received % Xferd  Average Speed  Time    Time    Time  Current
                                    Dload  Upload  Total  Spent    Left  Speed
    100 64890  100 64890    0    0  1234k      0 --:--:-- --:--:-- --:--:-- 1667k
    file Downloads/App/version.txt
    Version file the same (key matches)
    
    Using file 'Base/../libJuxta_dedi.so'
    LoadLibrary ERROR: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (                                                                                                                                                            required by lib/libsteam_api.so)
    
    Could not load game module Base/../libJuxta_dedi.so (errno 115)
    THE END
    

    Steps to reproduce: Type ./KAGDedi in server directory and press enter. Above error is encountered.
     
    class101 likes this.
  2. Mazey

    Mazey Haxor Global Moderator Forum Moderator Staff Alumni Donator Official Server Admin

    Messages:
    1,914
    Code:
    LoadLibrary ERROR: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found
    This is due to the Steam api.

    What does
    Code:
    strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
    return?
     
    elricsfate likes this.
  3. elricsfate

    elricsfate Catapult Fodder

    Messages:
    27

    Hey Mazey,

    The output of this command is below.

    Code:
    [kag@server ~]$ strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
    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_FORCE_NEW
    GLIBCXX_DEBUG_MESSAGE_LENGTH
    
    I do have some steamcmd servers running on the box if that makes a difference.
     
  4. Mazey

    Mazey Haxor Global Moderator Forum Moderator Staff Alumni Donator Official Server Admin

    Messages:
    1,914
    Try to install GLIBCXX 3.4.15 some way, I managed to do it with my Ubuntu but can't find it for Centos, I'll keep searching though.
    --- Double Post Merged, Nov 6, 2013, Original Post Date: Nov 4, 2013 ---
    Ok, glibcxx 3.4.15 isn't compatible with Centos yet, you can change to Fedora if that's ok or get debian based os (Debian/Ubuntu), no idea why you actually chose for Centos ._.
     
    elricsfate likes this.
  5. elricsfate

    elricsfate Catapult Fodder

    Messages:
    27
    CentOS is the standard in enterprise hosting which is why it's being used.

    A better question is why the Dev is using a version of Glib that is incompatible with something used on a huge number of dedicated servers.

    I will try and find a workaround but if not, then I'm dropping the KAG server until there is an update either to CentOS or KAG. I'm not completely wiping my system just to host one game.
     
  6. Mazey

    Mazey Haxor Global Moderator Forum Moderator Staff Alumni Donator Official Server Admin

    Messages:
    1,914
    Well Centos is quite behind stuff, it releases stuff when it's stable 'enough' which is the reason 3.4.15 isn't on Centos 6 yet, that's why I recommend to change OS is general.
    also IMO it's stupid that it uses glibcxx too but Geti responded that it's Steam's fault, KAG probably can't change it.
     
    elricsfate likes this.
  7. Geti

    Geti Please avoid PMing me (poke a mod instead) THD Team Administrator Global Moderator

    Messages:
    3,730
    The newer libstdc++ version change was due to steam library integration and we unfortunately can't avoid it; steamworks requires a newer version of c++ than KAG.

    That said, CentOS should really think about supporting C++11 development soon.
    That change happened 2 years ago, it's not exactly bleeding edge any more.
     
    elricsfate likes this.
  8. elricsfate

    elricsfate Catapult Fodder

    Messages:
    27

    Thanks for the reply Geti. I know another game or two with steam integration that now have this issue(Contagion is one) so that makes sense. I will try and find some sort of work around for the issue.
     
  9. Mazey

    Mazey Haxor Global Moderator Forum Moderator Staff Alumni Donator Official Server Admin

    Messages:
    1,914
  10. class101

    class101 KAG Lover Donator

    Messages:
    17
    Leaving this here since it's returning from centos search results but let me know if worth to add on the wiki.

    Just managed to get working the kag server on my Centos 6.4 by compiling from the sources gcc 4.8.2

    Assuming you get the error

    Code:
    Using file 'Base/../libJuxta_dedi.so'
    LoadLibrary ERROR: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by lib/libsteam_api.so)
    Build and installing GCC 4.8.2 to /opt/gcc-4.8.2
    Code:
    yum install wget gcc gcc-c++ make zip tar
    
    mkdir /gcc
    cd /gcc
    wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.gz
    tar -xzvf gcc-4.8.2.tar.gz
    cd gcc-4.8.2
    ./contrib/download_prerequisites
    cd ..
    mkdir objdir
    cd objdir/
    $PWD/../gcc-4.8.2/configure --prefix=/opt/gcc-4.8.2 --enable-languages=c,c++,fortran --enable-threads=posix --disable-nls --disable-multilib --disable-libgcj
    make
    make install
    
    Replace /usr/lib/libstdc++.so.6 link to the new one
    Code:
    ln -s -f /opt/gcc-4.8.2/lib/libstdc++.so.6 /usr/lib/libstdc++.so.6
    Or if you prefer a chroot so that you don't replace gcc for the whole system I do this instead

    Code:
    mkdir -p /chroot-kag/
    mkdir -p /chroot-kag/var/lib/rpm
    rpm --rebuilddb --root=/chroot-kag/
    rpm -i --root=/chroot-kag --nodeps http://mirror.centos.org/centos/6/os/i386/Packages/centos-release-6-4.el6.centos.10.i686.rpm
    yum --installroot=/chroot-kag install -y rpm-build yum
    cp /etc/resolv.conf /chroot-kag/etc/resolv.conf
    cp /etc/rc.d/init.d/functions /chroot-kag/etc/rc.d/init.d/functions
    mount --bind /proc /chroot-kag/proc
    mount --bind /dev /chroot-kag/dev
    chroot /chroot-kag
    yum install wget gcc gcc-c++ make zip tar
    mkdir /gcc
    cd /gcc
    wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.gz
    tar -xzvf gcc-4.8.2.tar.gz
    cd gcc-4.8.2
    ./contrib/download_prerequisites
    cd ..
    mkdir objdir
    cd objdir/
    $PWD/../gcc-4.8.2/configure --prefix=/opt/gcc-4.8.2 --enable-languages=c,c++,fortran --enable-threads=posix --disable-nls --disable-multilib --disable-libgcj
    make
    make install
    ln -s -f /opt/gcc-4.8.2/lib/libstdc++.so.6 /usr/lib/libstdc++.so.6
     
    BlueLuigi likes this.
  11. ThailandGamemingGold

    ThailandGamemingGold Ballista Bolt Thrower

    Messages:
    27
    me too i have error like this too ! how i fix help please !