для чего нужен make.exe и с чем его "едят" ?
Модератор: Модераторы
для чего нужен make.exe и с чем его "едят" ?
собственно в вопросе и есть интересующее меня.
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
Нужен он для автоматизации процесса сборки программ. Обычно в папке с исходниками находится файл makefile (но может называться и по-другому), в котором написаны инструкции для make.
Инструкции определяют, что от чего зависит, и какую команду надо выполнить, чтобы обновить зависимый компонент. Компонент обновляется (в режиме по умолчанию, естественно можно принудительно обновлять все), только если дата/время его 'исходников' больше, чем у него - за счет этого время сборки сокращается. В одном Makefile можно прописать несколько 'целей' (targets), чтобы собирать различные варианты. Так, 'make clean' обычно используют для удаления ненужных промежуточных файлов.
Добавим сюда, что поддерживается что-то типа языка программирования с переменными, циклами и условиями, и получим чрезвычайно мощное средство.
Инструкции определяют, что от чего зависит, и какую команду надо выполнить, чтобы обновить зависимый компонент. Компонент обновляется (в режиме по умолчанию, естественно можно принудительно обновлять все), только если дата/время его 'исходников' больше, чем у него - за счет этого время сборки сокращается. В одном Makefile можно прописать несколько 'целей' (targets), чтобы собирать различные варианты. Так, 'make clean' обычно используют для удаления ненужных промежуточных файлов.
Добавим сюда, что поддерживается что-то типа языка программирования с переменными, циклами и условиями, и получим чрезвычайно мощное средство.
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
В общих чертах это так - fpc и другие компиляторы Паскаля умеют сами отслеживать измененные модули. make исходно предназначался для сборки программ на С.
Но, когда межмодульные зависимости становятся сложными, встроенных возможностей компилятора перестает хватать. Поэтому сборка самого компилятора и библиотек производится с помощью make.
Но, когда межмодульные зависимости становятся сложными, встроенных возможностей компилятора перестает хватать. Поэтому сборка самого компилятора и библиотек производится с помощью make.
