Когда я пытаюсь выполнить C и программу C++, я добираюсь
collect2: fatal error: cannot find 'ld' compilation terminated.
Я уже установил GCC и G ++ последняя версия.
Наша команда получила ту же ошибку при создании RHEL6 DTS2 через AFL. Мы решили это использование компоновщик GNU вместо золотой компоновщик , к которому CMake, кажется, принимает значение по умолчанию.
В Ваших командных строках компилятора, наблюдении за -Wl,-fuse-ld=gold
и избавляются от него!
В нашем CMake buildsystems работавший путем вызова сценариев сборки с дополнительной опцией -DCOL_WITHOUT_GOLD
.
Можно установить золотого компоновщика через 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
, и затем все пошли прекрасные.
В моем случае мне разрешили это с обходным решением:
На dir мусорного ведра кросс-компилятора я сделал символьную ссылку, указывающую на компилятор
ld (ld -> powerpc-fsl-linux-ld).
Затем в make-файле или сценарии сборки я добавил папку набора инструментальных средств к переменной ПУТИ
export PATH=$PATH:"toolchain-dir-absolute-path"
это работало!