для чего нужен make.exe и с чем его "едят" ?

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
drew
незнакомец
Сообщения: 5
Зарегистрирован: 22.12.2006 10:22:23
Откуда: Рига

для чего нужен make.exe и с чем его "едят" ?

Сообщение drew »

собственно в вопросе и есть интересующее меня.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

Нужен он для автоматизации процесса сборки программ. Обычно в папке с исходниками находится файл makefile (но может называться и по-другому), в котором написаны инструкции для make.
Инструкции определяют, что от чего зависит, и какую команду надо выполнить, чтобы обновить зависимый компонент. Компонент обновляется (в режиме по умолчанию, естественно можно принудительно обновлять все), только если дата/время его 'исходников' больше, чем у него - за счет этого время сборки сокращается. В одном Makefile можно прописать несколько 'целей' (targets), чтобы собирать различные варианты. Так, 'make clean' обычно используют для удаления ненужных промежуточных файлов.
Добавим сюда, что поддерживается что-то типа языка программирования с переменными, циклами и условиями, и получим чрезвычайно мощное средство.
drew
незнакомец
Сообщения: 5
Зарегистрирован: 22.12.2006 10:22:23
Откуда: Рига

Сообщение drew »

Хм, понятно в общих чертах. Значится он делает то же, что и fpc [options] file ?
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

В общих чертах это так - fpc и другие компиляторы Паскаля умеют сами отслеживать измененные модули. make исходно предназначался для сборки программ на С.
Но, когда межмодульные зависимости становятся сложными, встроенных возможностей компилятора перестает хватать. Поэтому сборка самого компилятора и библиотек производится с помощью make.
drew
незнакомец
Сообщения: 5
Зарегистрирован: 22.12.2006 10:22:23
Откуда: Рига

Сообщение drew »

Спасиб за инфо. Будем дальше бороздить просторы.
Ответить