Russian Qt Forum

Компиляторы и платформы => Linux => Тема начата: Igors от Январь 17, 2010, 13:04



Название: collect2: cannot find ld (Eclipse CDT)
Отправлено: Igors от Январь 17, 2010, 13:04
Добрый день

Получаю такую бяку на линковке,
Цитировать
Building target: Test1.exe
Invoking: GCC C++ Linker
g++ -o"Test1.exe"  ./src/Test1.o
collect2: cannot find 'ld'
make: *** [Test1.exe] Error 1
причем только из Eclipse IDE, из командной строки все прекрасно работает и Test1.exe создается. Перепроверил PATH много раз, чтобы убедиться сделал pre-build step в котором печатаю PATH и список файлов в нем. Изучил также http://docs.freebsd.org/info/gcc/gcc.info.Collect2.html (http://docs.freebsd.org/info/gcc/gcc.info.Collect2.html) и попробовал все варианты оттуда.

Linux: Fedora 12, 32-bits (gcc 4.4.2)  На стареньком RedHat Linux (gcc 4.1) все работает из IDE, но там я никак не могу прорваться c Mesa, OpenGL -  т.е. с теми библиотеками которые мне нужны.

На всякий случай вот версии
Цитировать
[Igor@localhost ~]$ g++ --version
g++ (GCC) 4.4.2 20091027 (Red Hat 4.4.2-7)
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[Igor@localhost ~]$ ld --version
GNU ld version 2.19.51.0.14-34.fc12 20090722
Copyright 2008 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or (at your option) a later version.
This program has absolutely no warranty.

Конечно, гуглил - проблема известна - но не ее решение  :'(  Похоже на проблему Eclipse + libgcj-4.4.2-7 (java runtime library for gcc). Если знаете что делать - подскажите, буду благодарен


Название: Re: collect2: cannot find ld (Eclipse CDT)
Отправлено: Dendy от Январь 17, 2010, 13:26
Использовать CMake + Makefile-проект в Эклипсе?


Название: Re: collect2: cannot find ld (Eclipse CDT)
Отправлено: Igors от Январь 18, 2010, 03:03
Использовать CMake + Makefile-проект в Эклипсе?
Уже хотел было спросить "а как это сделать?" но в последний момент получилось с IDE  :)

1) Скопировал ld как real-ld (не знаю обязательно ли это)
2) А вот это точно обязательно: в команду линкера (g++) добавить путь к ld, итого
Цитировать
g++ -B/usr/bin
И все бы ничего (и Линукс ОС интересный) - если бы на это у меня не ушло 3 полных дня  :)


Название: Re: collect2: cannot find ld (Eclipse CDT)
Отправлено: Авварон от Январь 18, 2010, 13:07
я бы сказал - любите эклипс, который не видит /usr/bin