версия GLIBC_PRIVATE не определена в файле ld-linux-x86-64.so.2

если кто-нибудь может помочь новичку в проблеме с версией gcc?

Я встретил проблему на "version GLIBCXX_3.4.20' not found". После того, как я перешел по ссылке: Как Установить gcc 5.3 с yum на CentOS 7.2? Я столкнулся с дополнительными проблемами, как показано ниже:

scl enable devtoolset-7 bash
git: relocation error: libc.so.6: symbol _dl_starting_up, version GLIBC_PRIVATE not defined in file ld-linux-x86-64.so.2 with link time reference 

person vicky    schedule 12.03.2018    source источник


Ответы (2)


если кто-нибудь может помочь новичку в проблеме с версией gcc?

Ваша проблема не имеет ничего общего ни с какими версиями GCC.

git: relocation error: libc.so.6: symbol _dl_starting_up, ...

Эта ошибка, скорее всего, означает, что вы пытаетесь использовать что-то отличное от системы libc.so.6 (возможно, указывая LD_LIBRARY_PATH на каталог, содержащий копию libc.so.6 из другой системы).

Не делайте этого: это не работает. Использование альтернативной версии GLIBC возможно, но сложно. Этот ответ предлагает несколько способов сделать это.

person Employed Russian    schedule 19.03.2018
comment
Это ложь, что это не работает. Некоторые SDK регулярно делают это на сотнях производственных машин. В GLIBC есть версионные символы, поэтому у вас есть изящные ошибки, подобные тем, о которых сообщается. Я не минусую, потому что ответ в основном правильный, за исключением «Не делай этого: это не работает». - person Paulo Neves; 09.03.2021

Решение выглядит следующим образом:

  1. Создайте локальный путь установки, отражающий / (корневой путь), содержащий usr/lib64 и символическую ссылку на usr/lib64 на том же уровне, что и usr
  2. Скомпилируйте и установите GLibC локально (т.е. настройте --prefix=/local/installation/path (/local/installation/path содержит символическую ссылку usr и lib64)
  3. Установите другие необходимые зависимости
  4. Вызовите свое приложение следующим образом

    /local/installation/path/usr/lib/ld-linux-${arch}.so.${version} \
      --library-path /local/installation/path/usr/lib:/local/installation/path/usr/lib64:... \
      Your-Bin-Name \
      Your-Bin-CLI-Options
    

    ПРИМЕЧАНИЕ. При необходимости добавьте дополнительные пути, разделив их двоеточием.

person Sam    schedule 11.05.2020