ОШИБКА: /lib64/libstdc++.so.6: версия `GLIBCXX_3.4.20 'не найдена в Centos Linux 7.7 при установке R devtools - PullRequest
0 голосов
/ 28 января 2020

У меня виртуальная машина, работающая с Centos Linux 7.7.1908. Теперь я хочу установить devtools в R с помощью:

> install.packages("devtools")

Однако я получаю следующую ошибку:

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/owner/R/x86_64-redhat-linux-gnu-library/3.6/00LOCK-xml2/00new/xml2/libs/xml2.so)

При выполнении: strings /usr/lib64/libstdc++.so.6 | grep GLIBC не отображается GLIBCXX_3.4.20 ( как и ожидалось по ошибке). Версия anaconda, напротив, показывает

$ strings /home/owner/anaconda3/lib/libstdc++.so.6 | grep GLIBCXX
[...]
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
[...]

Моя идея заключалась в том, чтобы заставить R использовать версию anaconda вместо libstdc ++ в lib64. Я пытался добавить в PATH (он уже был там) и LD_LIBRARY_PATH, но безуспешно.

Заранее спасибо за помощь!

1 Ответ

1 голос
/ 01 февраля 2020

Я пытался добавить в PATH (он уже был там) и LD_LIBRARY_PATH, но безуспешно.

PATH абсолютно не влияет на то, где находится динамический c загрузчик ищет библиотеки, но LD_LIBRARY_PATH делает, и должен был сработать.

Если это не сработало, скорее всего, потому что какой-то промежуточный сценарий оболочки unsets этой переменной среды, или прилагает /usr/lib64 к нему. Вам нужно найти этот скрипт и исправить его.

...