Примеры и / или шаблоны Makefile - PullRequest
2 голосов
/ 30 августа 2010

Через некоторое время, используя make для сборки программ на C ++, я все еще не очень хорошо разбираюсь в Makefiles. Я думаю о том, чтобы попросить «хороший» пример и использовать его отныне. Я искал, но те, которые я нашел, слишком сложны для меня, чтобы понять. Пожалуйста, дайте мне шаблон с комментариями, объясняющими, как он работает.

Спасибо.

1 Ответ

3 голосов
/ 30 августа 2010

Make-файлы имеют тенденцию становиться действительно быстрыми, особенно при работе с несколькими каталогами. Многие из Makefile, с которыми я сталкивался в своей профессиональной жизни, где чуть больше прославляли сценарии оболочки, а часть зависимостей в основном отсутствовала. Такого рода проблемы были отмечены оригинальной статьей рекурсивная марка, считающаяся вредной .

Там и в следующей статье Реализация нерекурсивного make - вы можете найти подходящий шаблон.

Также здесь и здесь на SO вы можете найти людей, ищущих призрачный шаблон Makefile (ов).

Как правило, хороший Makefile, который я видел, был результатом работы эксперта, который работал в течение нескольких месяцев и создал инфраструктуру, которая превратила синтаксис Makefile в нечто почти совершенно другое. Разработчикам просто нужно было назначить специальные переменные, включить магический код и собрать.

Следующим шагом в этой эволюции является более современный инструмент, такой как CMake . CMake будет генерировать хорошо сформированные Makefiles для вас. Если у вас есть контроль над этим, рассмотрите такой инструмент.

ИМХО, вы найдете, что это имеет гораздо больше смысла, и сделает вас намного более продуктивным, добавит кросс-платформенную ценность и поддержит весь процесс сборки (включая настройку, упаковку, непрерывную интеграцию и т. Д.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...