collect2: фатальная ошибка: не может найти 'ld' компиляцию завершенной

Когда я пытаюсь выполнить C и программу C++, я добираюсь

collect2: fatal error: cannot find 'ld' compilation terminated.

Я уже установил GCC и G ++ последняя версия.

1
задан 11 August 2017 в 01:44

3 ответа

Наша команда получила ту же ошибку при создании RHEL6 DTS2 через AFL. Мы решили это использование компоновщик GNU вместо золотой компоновщик , к которому CMake, кажется, принимает значение по умолчанию.

В Ваших командных строках компилятора, наблюдении за -Wl,-fuse-ld=gold и избавляются от него!

В нашем CMake buildsystems работавший путем вызова сценариев сборки с дополнительной опцией -DCOL_WITHOUT_GOLD.

1
ответ дан 7 December 2019 в 12:39

Можно установить золотого компоновщика через apt-get install binutils-gold.

Для меня, который все еще дал ошибки, поскольку binutils-золото устанавливает/usr/bin/ld.gold, и через strace, кажется, что gcc хочет двоичный файл, названный с полным хостом трижды, например, x86_64-nptl-linux-gnu-ld.gold. У меня был к символьной ссылке он ln -s /usr/bin/ld.gold /usr/bin/x86_64-nptl-linux-gnu-ld.gold, и затем все пошли прекрасные.

0
ответ дан 7 December 2019 в 12:39

В моем случае мне разрешили это с обходным решением:

На dir мусорного ведра кросс-компилятора я сделал символьную ссылку, указывающую на компилятор

ld (ld -> powerpc-fsl-linux-ld). 

Затем в make-файле или сценарии сборки я добавил папку набора инструментальных средств к переменной ПУТИ

export PATH=$PATH:"toolchain-dir-absolute-path"

это работало!

2
ответ дан 7 December 2019 в 12:39

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

Похожие вопросы: