Создайте несколько проектов CDT C ++ из командной строки - PullRequest
34 голосов
/ 05 декабря 2008

Какое лучшее решение для создания нескольких проектов CDT C ++ из командной строки? Проекты имеют ссылки, и поэтому невозможно создать отдельные проекты.

Ответы [ 5 ]

61 голосов
/ 07 июня 2009

Эта функция была добавлена ​​в CDT 6 (окончательная сборка должна быть 15 июня 2009 г.). Вы можете скачать окончательный вариант кандидата со страницы сборок: download.eclipse.org/tools/cdt/builds/6.0.0/.

Используя выпуск Eclipse 3.5 + CDT 6, вы можете импортировать, создавать и чистить проекты и рабочую область, используя следующие параметры, отправленные в Eclipse из командной строки:

eclipse -nosplash 
        -application org.eclipse.cdt.managedbuilder.core.headlessbuild 
        -import {[uri:/]/path/to/project} 
        -build {project_name | all} 
        -cleanBuild {projec_name | all}

В Windows используйте eclipsec.exe вместо eclipse.exe, чтобы выходные данные сборки записывались в stdout / stderr, и чтобы вызов блокировался до завершения.

Переключатель ' -application ' предписывает Eclipse запускать сборщик без CDT, а не запускать рабочую среду. Другие переключатели могут использоваться по отдельности или вместе. Это означает, что вы можете оформить проект, используя собственный скрипт оболочки, ' -import ' в рабочее пространство и ' -build ', используя безголовый конструктор Managedbuilder.

Используйте ключ ' -data ', чтобы указать используемое рабочее пространство, которое может быть пустым временным каталогом, см. Документацию по времени выполнения для других коммутаторов, поддерживаемых средой выполнения платформы: help.eclipse.org / галилео / index.jsp? Тема = / org.eclipse.platform.doc.isv / ссылки / разное / среда-options.html

См. ошибка 186847, комментарий 24 и далее для получения более подробной информации о подтвержденной функциональности.

1 голос
/ 07 июня 2009

До CDT 6 вы можете использовать JDT AptBuilder (входит в классическую Eclipse, например).

Это позволяет вам создать уже настроенное рабочее пространство. Итак, вы: извлекаете ваш источник, настраиваете рабочее пространство, которое указывает на извлеченные проекты. Ваши сценарии автоматической сборки могут затем обновлять извлечения и запускать AptBuilder без необходимости запуска графического интерфейса.

0 голосов
/ 06 января 2009

Мы делаем это в нашей существующей сборке.

Поместите make-файл во все внешние ссылки и ваш проект верхнего уровня В вашем правиле "все" запустите: make -C ./externalref1 make -C ./externalref2 и т.д.

мы на самом деле определяем внешние зависимости в переменной: EXT_DEP = externalref1 externalref2 затем используйте команду subst (замена), чтобы запустить все вспомогательные марки, используя правильный вызов.

0 голосов
/ 29 мая 2009

Безголовая сборка с управляющим компоновщиком в настоящее время не поддерживается, см. ошибка 186847 - внутренний компоновщик CDT не поддерживает автоматические компоновки командной строки .

Если вы используете неуправляемый (make) строитель, то у вас уже есть Makefile, которые вы можете использовать из командной строки.

0 голосов
/ 05 января 2009

Если вы создали проект Make в CDT, вы можете просто использовать вашу любимую оболочку и выполнить make во всех каталогах проектов.

...