Про эту проблему не писал только ленивый, однако внесу свои пять копеек, тем более, что разобрался не с пол-пинка.
У некоторых пользователей бывают проблемы со сборкой (из портежей и вручную), которая характеризуется ошибкой:
/bin/sed: can't read //usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.4-20050411/libstdc++.la: No such file or directory libtool-nofpic: link: `//usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.4-20050411/libstdc++.la' is not a valid libtool archive
Сообщение об ошибки может быть разным, но суть решения одна. Здесь а) неправильно указан CHOST системы i386-pc-linux-gnu вместо i686-pc-linux-gnu и б) неверно указан номер активной версии gcc - 3.3.4-20050411 вместо 3.4.4. Для исправления служит команда fix_libtool_files.sh
. Лечил проблему строго по рецепту.
fix_libtool_files.sh 3.3.4-20050411 --oldarch i386-pc-linux-gnu
Проблема вылечилась. Суть фишки в том, что я прочитал в одном из FAQ решение - надо делать fix_libtool_files.sh 3.3.4
, где 3.4.4 номер версии gcc. сделал и не помогло. Первый параметр должен быть строго номер старой версии gcc как он указан в сообщении об ошибке. Старый CHOST также строго из сообщения об ошибке и никак иначе.
Хуже было до обновления gcc, когда номер версии gcc был нужный, а CHOST - старый. Нужно было всего лишь сделать fix_libtool_files.sh --oldarch i386-pc-linux-gnu
, а я решил вопрос создав несколько новых мягких ссылок. Вывод - следует больше доверять руководствам, а не FAQ.
P.S. Читаю статью спустя пятнадцать лет после написания. С тех пор я пользовался Linux, но не Gentoo. Припоминаю, что гентушников назвали “красноглазыми” даже другие линуксоиды. Вспомнил почему.