2009-08-02 2 views
3

Я разрабатываю под Windows и использую Eclipse с CDT для разработки приложений на C++.Build Managment: проект Eclipse vs Eclipse Managed Make project

Теперь для управления сборкой я могу создать нормальный C++ проектом и Eclipse, будет полностью управлять сборки (вызов компилятора г ++ с соответствующими аргументами), или я могу создать C проект Managed Make ++ и Eclipse, будет управлять Makefile затем вызывает make на этом Makefile (при создании проекта), который, в свою очередь, завершит процесс сборки.

Есть ли какое-либо преимущество в использовании одного из этих подходов, а не другого?

EDIT: Я не говорю о Managed Make vs Standard Make, скорее я говорю о Make vs Eclipse. Вчера я попытался скомпилировать проект C++ под eclipse в системе, которая не включает Make вообще, а проект скомпилирован отлично, а это означает, что eclipse может полностью управлять своей конструкцией, что вносит основной вопрос: do I нужен Make ?; Я могу использовать только eclipse.

Вот мой вопрос ...

ответ

9

Одним из соображений является то, что вы хотите, чтобы требовали, что разработчики, которые работают с вашим проектом, должны установить и использовать Eclipse? Это не оценочное суждение об Eclipse, а предположение относительно вашей аудитории и насколько они знакомы с выбранным вами инструментом. Если программист на C++ хорошо знаком с Java/Eclipse, это может не быть проблемой. Если они не знакомы с Eclipse, они собираются увидеть Eclipse как препятствие для выполнения своей работы.

Вы должны обратить внимание на свои инструкции по объединению среды сборки с нуля и обновите ее. Вы знаете разработчиков, там будут некоторые умирающие C++, которые будут проклинать ваше решение и рассказать о том, как вы должны были просто сделать это с помощью Make вместо того, чтобы делать (хе) их установку совершенно новой платформы только для сборки.

6

Я не уверен, что если бы вы эту опцию в C++ проекта, но с проектом Managed Make C++ вы могли бы назвать Makefile напрямую из среды командной строки (при условии, что вы выполнили преобразование исполняемого файла make в свой путь). Я считаю, что это реальный актив - особенно когда дело доходит до автоматизированных скриптов сборки и пользователей, которые более ориентированы на CLI.

Также - не забывайте, что создание собственного файла makefile является вариантом с CDT. Если у вас есть особые требования, вы можете написать свои собственные файлы make и компоновщика, а Eclipse свяжет цели сборки с этим make-файлом.

+0

Я попытался создать проект C++ и заметил, что затмение управляет зависимость файла, и он только создает файлы, которые были изменены с последнего раза. Итог: Eclipse может управлять построением на своем собственном ... – Lawand

+0

Отмечено для упоминания автоматизированных сценариев (или таких вещей, как Хадсон). Мне нужны разные значения #define для Eclipse vs cLI - любая идея как? (И как написать собственный файл makefile в Eclipse?) – Mawg

0

IMO, это зависит от вашего популярности в проекте.
Обычно, нет проблем со зданием. Сделать проекты практически на любой платформе (в окнах вам может понадобиться cygwin/mingw). Более того, если кто-то будет компилировать ваш проект на основе Eclipse и кто не использует Eclipse, он будет обвинять вас в вашем выборе.
Итак, если ваш проект не предназначен для масс (или вы действительно не заботитесь о них), используйте все, что пожелаете. Но если источники собираются компилироваться другими людьми, может быть хорошей идеей переключиться на Make.

0

Это зависит от масштаба вашей команды и вашего проекта. Сделать гораздо сложнее настроить, но его можно масштабировать для создания нескольких машин и больших команд независимо от Eclipse. Также с помощью Make вы получите больше контроля над созданием своего проекта (когда вы погрузитесь в детали файлов make), и его можно будет включить в системы непрерывной интеграции. И ваши файлы make могут быть независимыми от платформы (если это относится к вам).

В случае создания с использованием Eclipse все сводится к вашему файлу проекта. Если несколько человек должны внести изменения в структуру вашего проекта (т.добавлять/изменять компоненты), может быть сложно управлять конфигурацией, в то время как вы будете в порядке с помощью make-файлов.

С другой стороны: если это разработка с одним или двумя лицами, Eclipse CDT поддерживает вашу быструю дорожку, так как вы можете пропустить установку файла времени, требующего много времени.

2

Если вы собираетесь использовать непрерывную сборки/систему интеграции в какой-то момент Makefile может быть очень полезным