LINUX.ORG.RU

Проблема с библиотекой libstdc++.so.6


0

0

привет всем!

Столкнулся с проблемой: компилирую код на машине 2.6.17.14 #1 Wed Nov 21 18:04:05 MSK 2007 i686 i686 i386 GNU/Linux с использованием библиотеки libstdc++.so.6 Затем пытаюсь запустить ее на другой 2.6.0 #18 Thu Jan 11 10:51:55 MSK 2007 i686 i686 i386 GNU/Linux

Пишу env LD_LIBRARY_PATH=<path_to_libstdc++.so.6> myprog

В ответ получаю:

error while loading shared libraries: libstdc++.so.6: cannot handle TLS data

В чем причина сбоя в загрузке библиотеки?

в том что в 2.6.8 стали использовать Thread local storage (TLS) и Native Posix Threads (NPTL)

на дистрибутиве использующем 2.6.17 это все используется, в 2.6.0 - нет

либо обновляйте старую (если возможно)
либо собирайте на ней же.

Sylvia ★★★★★
()
Ответ на: комментарий от Sylvia

ps: обновления я имела ввиду не ядро
основное где используется NPTL - libc
с старыми ядрами и в старых версиях libc использовалась библиотека linuxthreads
в новых - NPTL

так что обновление только ядра ничего не даст, нужно обновлять glibc,
после чего возможно еще много чего придется перекомпилировать, помимо toolchain (binutils, gcc), вообщем проще обновить полностью весь дистрибутив.

Sylvia ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.