Ошибка GLIBCXX_3.4.10 not found

laursen
На сайте с 08.02.2008
Offline
68
1787

При запуске игрового сервера выдаёт ошибку:

[root@serv x1]# STEAMEXE=steamcmd ./steam.sh

/x1/linux32/steamcmd: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.10' not found (required by /x1/linux32/steamcmd)
/x1/linux32/steamcmd: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /x1/linux32/steamcmd)

О системе:

[root@serv x1]# cat /etc/redhat-release

CentOS release 5.7 (Final)

[root@serv x1]# uname -a

Linux serv.xxxxxxxxx.xx 2.6.18-274.el5 #1 SMP Fri Jul 22 04:43:29 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux

[root@serv x1]# ls -l  /usr/lib/libstdc++.so.6

lrwxrwxrwx 1 root root 18 Окт 25 2011 /usr/lib/libstdc++.so.6 -> libstdc++.so.6.0.8
Boris A Dolgov
На сайте с 04.07.2007
Offline
215
#1

Обновитесь до CentOS 6

С уважением, Борис Долгов. Администрирование, дешевые лицензии ISPsystem, Parallels, cPanel, DirectAdmin, скины, SSL - ISPlicense.ru (http://www.isplicense.ru/?from=4926)
O
На сайте с 11.05.2012
Offline
3
#2

Покажите

strings /usr/lib/libstdc++.so.6 | grep GLIBCXX

и еще

echo $LD_LIBRARY_PATH

ну и на всякий случай

ldd /x1/linux32/steamcmd
laursen
На сайте с 08.02.2008
Offline
68
#3

strings /usr/lib/libstdc++.so.6 | grep GLIBCXX

[root@serv x1]# 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_FORCE_NEW

ldd /usr/games/cs_go/x1/linux32/steamcmd

[root@serv x1]# ldd /usr/games/cs_go/x1/linux32/steamcmd

/usr/games/cs_go/x1/linux32/steamcmd: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.10' not found (required by /usr/games/cs_go/x1/linux32/steamcmd)
/usr/games/cs_go/x1/linux32/steamcmd: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/games/cs_go/x1/linux32/steamcmd)
linux-gate.so.1 => (0xffffe000)
librt.so.1 => /lib/librt.so.1 (0x009ac000)
libm.so.6 => /lib/libm.so.6 (0x009ff000)
libdl.so.2 => /lib/libdl.so.2 (0x009f8000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xf7e17000)
libpthread.so.0 => /lib/libpthread.so.0 (0x008f1000)
libc.so.6 => /lib/libc.so.6 (0x00796000)
/lib/ld-linux.so.2 (0x00777000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xf7e0a000)

echo $LD_LIBRARY_PATH - эта команда ничего не выводит, пустота.

png scr.png
O
На сайте с 11.05.2012
Offline
3
#4

Таки да, старые либы.

Варианты:

1) Апдейт до 6, как сказали выше. Правильней всего.

2) Апдейт до 5.8 и установка оттуда свежего gcc44; решение нагуглено, лично я в нем не уверен.

3) Установка более свежих либ. Вообще не вариант, много чего можно по ходу сломать.

Еще как вариант, если обновить не получится - поставить нужные либы куда-нибудь в chroot и дергать их оттуда.

---------- Добавлено 12.05.2012 в 14:14 ----------

http://forum.ru-board.com/topic.cgi?forum=65&topic=4066 - вот тут похожее, предлагают скачать пакет из федоры (топик там старый, здесь актуальнее от 6 центоси), распаковать куда-нибудь и дернуть оттуда.

Если есть доступ - могу помочь, денег не возьму.

laursen
На сайте с 08.02.2008
Offline
68
#5

Апдейт до 6 все настройки сбросит? iptables, установленный mysql, ftp и т.д.?

Или после апдейта до 6 всё как было так и останется и донастраивать ничего не нужно будет?

O
На сайте с 11.05.2012
Offline
3
#6
laursen:
Апдейт до 6 все настройки сбросит? iptables, установленный mysql, ftp и т.д.?
Или после апдейта до 6 всё как было так и останется и донастраивать ничего не нужно будет?

В теории, сломаться ничего не должно; на практике же работает закон подлости :).

Если всё работает - придерживайтесь принципа "работает - не трожь". Распакуйте отдельно пакет с либами и подсуньте путь программе.

laursen
На сайте с 08.02.2008
Offline
68
#7
Obramko:
Распакуйте отдельно пакет с либами и подсуньте путь программе.

Честно, без понятия как это всё делается :)

O
На сайте с 11.05.2012
Offline
3
#8
laursen:
Честно, без понятия как это всё делается :)

Через полчаса смогу помочь. Как писал выше, денег не возьму.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий