gcc без поддержки C++
Hellsy22 16 апреля, 2013 - 08:04
Случайно пересобрал gcc без флага cxx:
sys-devel/gcc-4.6.3 was built with the following: USE="(multilib) nls nptl openmp (-altivec) -cxx -doc (-fixed-point) -fortran -gcj -graphite -gtk (-hardened) (-libssp) -mudflap -multislot -nopie -nossp -objc -objc++ -objc-gc -test -vanilla" ABI_X86="64"
Теперь ничего не могу с ним сделать - ему нужен c++ compiler для того, чтобы обновиться:
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
# gcc 11.cpp
gcc: error: 11.cpp: C++ compiler not installed on this system
Как бы мне разрешить эту неприятную ситуацию? FAQ читал, но ссылка в статье про восстановление из бинариков - нерабочая.
»
- Для комментирования войдите или зарегистрируйтесь
Update: Попробовал поставить
Update:
Попробовал поставить gcc из бинарника, взяв его тут: http://tinderbox.dev.gentoo.org/default-linux/amd64/sys-devel/
После этого перестал работать и сам gcc:
Кроме того куда-то мистически пропал env-update
А компиляция cpp так и не заработала:
/usr/libexec/gcc/x86_64-pc-linux-gnu/4.6.3/cc1plus: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory
Разворачиваете рядом stage3,
Разворачиваете рядом stage3, делаете в него chroot в chroot окружении монтируете корневую и прочие файловые системы, запускаете в chroot окружении установку gcc с нужными флагами, но указав параметр '--root=<куда вы в chroot окружении смонтировали корень.>'
Естественно делаете bind этих разделов корня проблемной системы, если они находятся на отдельных файловых системах.
О, это надо запомнить.
О, это надо запомнить как универсальный рецепт. Спасибо.
Update2: Запобеждал
В общем, взял из скачанного пакета список файлов, а сами файлы взял из stage3-tarball.
Поправил косяк с lib - у меня был симлинк, а tar почему-то жестоко превратил ее в директорию (потому и пропал env-update и все остальное).
После чего прогнал revdep-rebuild и sys-apps/groff-1.21 нормально поставился.