1

Я пытаюсь перейти на Firefox 5 на RHEL5 и получаю следующую ошибку:

./firefox-bin: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /home/isdtc/tdiakiw/bin/firefox5/firefox/libxul.so)

Поскольку компьютер - это рабочая машина, у меня нет доступа к непосредственному обновлению библиотек. Чтобы попытаться обойти это, я скачал библиотеку libstdc++. So.6.0.10.

strings libstdc++.so.6.0.10 | 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_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH

Есть ли способ заставить Firefox использовать эту библиотеку вместо этого? Я попытался добавить каталог с новой библиотекой (с таким именем) в LD_LIBRARY_PATH и затем запустить, но я все еще получаю то же сообщение об ошибке

./firefox
+ moz_libdir=/usr/local/lib/firefox-5.0.1
+ found=0
+ progname=./firefox
++ dirname ./firefox
+ curdir=.
++ basename ./firefox
+ progbase=firefox
+ run_moz=./run-mozilla.sh
+ test -x ./run-mozilla.sh
+ dist_bin=.
+ found=1
+ '[' 1 = 0 ']'
+ script_args=
+ debugging=0
+ MOZILLA_BIN=firefox-bin
+ '[' linux = beos ']'
+ pass_arg_count=0
+ '[' 0 -gt 0 ']'
+ '[' 0 = 1 ']'
+ exec ./run-mozilla.sh ./firefox-bin
./firefox-bin: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by xxxxxxxxxxxxx/firefox/libxul.so)

1 ответ1

0

Firefox поставляет скрипт оболочки, который обычно находится в /usr/bin/firefox и который выполняет некоторые настройки и запускает настоящий двоичный файл, обычно /usr/lib/firefox/firefox-bin . (Очевидно, что эти пути будут другими, поскольку вы устанавливаете его в своем домашнем каталоге.) В этом случае сценарий оболочки может переопределять LD_LIBRARY_PATH . Проверьте это и убедитесь, что это не так, и попробуйте добавить к нему свой LD_LIBRARY_PATH .

Я предполагаю, что вы используете официальные бинарные файлы от mozilla.com. Возможно, будет проще скачать исходный код и скомпилировать его (при условии, что в вашей системе установлены необходимые инструменты), потому что, если Firefox на самом деле не нуждается в libstdc++ 6.0.10, а хочет его, потому что именно так поступил Mozilla откомпилируйте его, возможно, вы сможете успешно скомпилировать его, чтобы использовать версию, установленную в вашей системе. Подробные инструкции по сборке Firefox есть на сайте Центра разработчиков Mozilla.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .