@Mercury13
Программист на «си с крестами» и не только

Насколько работает линкер GOLD в MinGW и почему Invalid character?

Обнаружил, что в современных версиях MinGW есть линкер ld.gold.exe. «Я решил попробовать, бутылку взял, открыл — вдруг оттуда вылезло что-то непотребное». А именно…
Добавляю в проект Qt строки
QMAKE_CXXFLAGS += -fuse-ld=gold
QMAKE_LFLAGS += -fuse-ld=gold

И на каждом объектном файле получаются такие ошибки.
C:\Qt\Tools\mingw530_32\i686-w64-mingw32\bin\ld.gold.exe:-1: error: error: C:/Qt/Tools/mingw530_32/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o:1:2: invalid character
C:\Qt\Tools\mingw530_32\i686-w64-mingw32\bin\ld.gold.exe:-1: error: error: C:/Qt/Tools/mingw530_32/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o:1:2: syntax error, unexpected $end
C:\Qt\Tools\mingw530_32\i686-w64-mingw32\bin\ld.gold.exe:-1: error: error: C:/Qt/Tools/mingw530_32/bin/../lib/gcc/i686-w64-mingw32/5.3.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o: not an object or archive

И так на всех файлах. Gold умеет собирать только под Linux? Или у меня лыжи не едут?
А если под Linux, зачем он такой нужен в Windows?
  • Вопрос задан
  • 504 просмотра
Решения вопроса 2
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
gold работает только с файлами ELF.
Ответ написан
@Mercury13 Автор вопроса
Программист на «си с крестами» и не только
В 2021 используйте LLD.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы