Сборочные файлы в Linux: обзор

ОГЛАВЛЕНИЕ

Данная статья делает упор на приложениях C и на том, как использовать команду make и makefile(сборочный файл) для их компоновки.

• Скачать примеры в формате ZIP - 9.45 Кб

Введение

Маленькие приложения C/C++ с парой модулей просты в управлении. Разработчики могут легко перекомпилировать их путем прямого вызова компилятора, передав исходные файлы как аргументы - это простой подход. Однако если проект становится слишком сложным с множеством исходных файлов, требуется инструмент, позволяющий разработчику управлять проектом.

Такой инструмент – команда make. Команда make применяется не только для облегчения компиляции приложений, но и для выработки выходных файлов из нескольких входных файлов.

Данная статья – не полное руководство, она делает упор на приложениях C и на том, как использовать команду make и makefile(сборочный файл) для их компоновки. Есть файл zip с множеством примеров в структуре каталога. Самые важные файлы в примерах – сборочные файлы, а не исходный код C. Скачайте файл с примерами и разархивируйте его с помощью команды unzip или любого другого излюбленного инструмента. Итак, для лучшего понимания этой статьи:

1. Скачайте make_samples.zip.
2. Откройте сеанс работы с терминалом.
3. Создайте каталог в вашем личном каталоге.
4. Переместите make_samples.zip в созданный каталог.
5. Разархивируйте его: unzip make_samples.zip.

Инструмент Make: обзор синтаксиса

Синтаксис команды make такой:

make [параметры] [цель]

Можно ввести с клавиатуры make –help, чтобы увидеть все параметры, поддерживаемые командой make. Объяснение всех этих параметров не входит в статью. Главный вопрос - структура сборочного файла, и как он работает. Цель - метка (или определенное имя), имеющаяся в сборочном файле. Она будет описана позже в статье.

make требует сборочного файла, сообщающего, как приложение должно быть скомпоновано. Сборочный файл часто хранится в том же каталоге, что и другие исходные файлы, и может иметь любое желаемое имя. Например, если сборочный файл называется run.mk, то для выполнения команды make введите с клавиатуры:

make -f run.mk

Параметр -f сообщает команде make имя сборочного файла, который надо обработать.

Есть два специальных имени, делающих параметр –f ненужным: makefile и Makefile. При выполнении make без передачи имени файла сначала она будет искать файл по имени makefile. Если он не существует, она будет искать файл по имени Makefile. Если в каталоге есть два файла – один по имени makefile, а второй по имени Makefile, и с клавиатуры вводится:

make <enter>

Команда make обработает файл по имени makefile. В таком случае надо использовать параметр –f, чтобы команда make обработала Makefile.