Проблемы с компиляцией с использованием Eclipse CDT с альтернативным набором инструментов - PullRequest
0 голосов
/ 13 января 2012

Я пытаюсь использовать Eclipse CDT (версия: Indigo Service Release 1 Build id: 20110916-0149) для сборки и отладки моего проекта c / c ++ в 64-битной Linux RHEL6, и у меня возникают проблемы.Я сделал то, что считал необходимым использовать альтернативную цепочку инструментов для выполнения компиляции, но, похоже, чего-то не хватает, поскольку eclipse говорит, что он скомпилировал исходный код, но на самом деле этого не сделал.

Для настройки я пошел в Свойства проекта C / C ++ -> C / C ++ Build, настраивая конфигурацию «Отладка», на вкладке «Настройки Builder» я снял флажок «Использовать команду сборки по умолчанию» и ввел имя моего набора инструментов ».mk all "в поле" Build command ".Затем я снял флажок «Автоматически создавать Makefiles».Затем я изменил поле «Каталог сборки» на «».Наконец, я перешел на вкладку «Поведение» и снял флажок «Построить при сохранении ресурса (автоматическая сборка)» и изменил «сделать цель сборки» на «все $ {selected_resource_loc}».

Теперь, когдаЯ иду в свой проект и выбираю подкаталог, который необходимо собрать, а затем нажимаю на кнопку сборки на панели инструментов, вот что происходит:

1) Я вижу «Build Project ...» вокно прогресса на короткое время

2) Консоль сборки CDT отображает это:

**** Build of configuration Debug for project myproj ****

mk all

**** Build Finished ****

Выше приведено то, что я вижу, когда мой код требует перестроения, не нуждается в перестроении и когда возникают ошибкив сборнике.Я могу убедиться в этом, открыв терминал bash и введя «mk» в каталог, который я хочу построить.Когда я компилирую из терминала, я вижу выходные данные компилятора (успех и ошибки и т. Д.), Но затмение ничего мне не показывает.

Должно быть, я что-то упустил, но я не уверен, что.У кого-нибудь есть идеи, что я делаю неправильно?

- обновление -

Я выяснил, какая часть моей проблемы заключалась в том, что мой инструмент сборки былвызывается через скрипт bash без шебанга вверху.

Моя следующая проблема - сборка всегда вызывается из корня проекта, в котором нет make-файла.Я попытался поместить переменную «$ {selected_resource_loc}» в оба поля «make build target», но, похоже, это не дает правильного эффекта, так как моя команда «mk all», кажется, вызывается с переменной, переводимой впустая строка каждый раз.Есть идеи по этому вопросу?

1 Ответ

0 голосов
/ 17 января 2012

' УВАЖАЕМЫЕ ЛЮДИ ИЗ БУДУЩЕГО: Вот что мы выяснили до сих пор ... '

Я решил свою проблему. Я попросил друга с подобной настройкой попробовать это, и он заставил его работать с первой попытки. Затем я пришел к выводу, что это была либо моя установка, либо мой проект. Таким образом, я приступил к удалению файлов проекта (.project и .cproject) и воссоздаю проект. После того, как я закончил это, это, казалось, работало как очарование. Я должен был выбрать непонятную несовместимую опцию проекта, из-за которой что-то не раскрывало переменную $ {selected_resource_loc}. Weird. Я надеюсь, что это поможет кому-то на этом пути.

...