build gccgo получил ошибку компоновщика

Я строю gccgo с учетом инструкции здесь. Тем не менее, я получил сообщение об ошибке после того, как я сделал:

../gccgo/configure --prefix=/opt/gccgo --enable-languages=c,c++,go --with-ld=/opt/gold/bin/ld  
make

Ошибка:

/ opt / gold / bin / ld: error: не удается найти -lugin
/ opt / gold / bin / ld: ошибка: не удается найти -lugin-opt = / home / objdir /./ gcc / lto-wrapper
/ opt / gold / bin / ld: ошибка: не удается найти -lugin-opt=-fresolution=/tmp/cc9M7ZGm.res

Вот какой исходный код я использовал:

ОС: Ubuntu 14.04 / x86_64
binutils: http://ftp.gnu.org/gnu/binutils/binutils-2.29.tar.xz
код gccgo brach: https://github.com/gcc-mirror/gcc/tree/gccgo

Есть что-то, что я пропустил?

Обновление: у меня работает после удаления --with-ld==/opt/gold/bin/ld опция при запуске configure для gccgo make Кажется, это проблема, связанная с золотом.

1 ответ

Вы должны пройти --enable-plugins в configure когда вы собираете binutils, чтобы иметь возможность использовать плагины с ld.gold (интерфейс плагина включен по умолчанию для достаточно новых версий ld.bfdтрадиционный компоновщик GNU).

Смотрите эту ошибку: https://sourceware.org/bugzilla/show_bug.cgi?id=22500

Другие вопросы по тегам