Makefile для Eclipse C / C ++ в Linux - PullRequest
       4

Makefile для Eclipse C / C ++ в Linux

2 голосов
/ 08 сентября 2010

Я использую Eclipse 3.6 для C / C ++ для Linux. Мне нужно скомпилировать существующий проект с моим собственным рабочим make-файлом. Этот make-файл хорошо работает из командной строки, но когда я импортировал свой проект в Eclipse и попытался использовать Build, он не работает, кажется, он пытается использовать make-файл, автоматически созданный Eclipse. Я снял флажок «Автоматически генерировать Makefile» в свойствах проекта - C / C ++ Build и вместо многих ошибок получил следующее: «*** команды начинаются перед первой целью. Stop.»

Может быть, этот проект не был правильно импортирован в Eclipse? Я знаю, что существует такая вещь, как «Стандартный проект Make», который не будет создавать make-файл автоматически, но нуждается в моем собственном make-файле, но в Eclipse IDE (под File-New-C ++ Project) нет доступных опций «Стандартный Make-проект». Итак, вопрос в том, как указать Eclipse на правильный make-файл для сборки импортированного проекта?

Я также попытался отключить «Использовать команду сборки по умолчанию» в Свойствах проекта - C / C ++ Build и поместить туда в строку «Команда сборки» / path_to_project_folder / make, результат (в консоли): Невозможно запустить программу "/ path_to_project_folder / make": неизвестная причина " Буду признателен за любые предложения.

Ответы [ 2 ]

3 голосов
/ 15 сентября 2010

Не импортировать.

Вместо этого создайте НОВЫЙ проект, используя «Makefile Project из существующего кода» в C / C ++.

Да, это несколько нелогично, но работает.

1 голос
/ 09 сентября 2010

Пока что лучший способ справиться с этой ситуацией, которую я обнаружил, - это заменить автоматически сгенерированный make-файл Eclipse (который хранится в каталоге Debug, созданный Eclipse в папке проекта) на мой собственный make-файл, в котором я просто включить эти строки:

all: 
    cd .. && $(MAKE)

Теперь, когда я пытаюсь собрать проект из Eclipse IDE (с помощью кнопки), он выполняет этот make-файл, который выполняет всю работу, и проекты компилируются нормально.

...