RDM/2 The Russian Electronic Developer Magazine  
RDM/2 Русский электронный журнал разработчика  
ДомойОт редактораПишите намОбратная связьRU/2

Автоматизации составления makefile

Я хочу представить вашему вниманию программу для автоматизации составления makefile. Это программа tmake (C) 1996-1998 by Troll Tech AS. Вообще-то это на самом деле скрипт на языке perl. Зачем нужен makefile, я думаю, объяснять излишне. Каждый, кто создавал программные проекты с количеством файлов более 3-5, сталкивался с командой make. Можно, конечно, составлять командный файл, но лучше это сделать более культурно.

Tmake изначально предназначался для создания makefile для программ, написанных на Qt фирмы TrollTech, поскольку из-за использования промежуточного метатранслятора процесс ручной компиляции весьма труден, и, соответственно, makefile в этом случае значительно сложнее. Но, как я выяснил, с помощью tmake можно без проблем создавать makefile и для обычных проектов как на чистом C (C++), так и с использованием различных расширений типа gtk и пр. А поскольку tmake является полностью настраиваемым, то создание template для какой-либо конфигурации обычно проблем не составляет.

Предположим, что у вас всё установлено и настроено (как -- опишу ниже). Тогда процесс создания makefile состоит из следующих действий:

  1. Заходим в каталог с вашим проектом.
  2. Запускаем скрипт progen командой типа
    perl \usr\local\tmake\bin\progen -o project.pro
    (естественно, для этого можно создать маленький командный файл, но, поскольку это надо делать очень редко, то вряд ли он нужен) и на выходе получаем файл project.pro (если ключ -o не ставить, то вывод будет идти на экран, что полезно для первоначального контроля), в котором будет по полочкам разложен ваш проект -- все исходные файлы, которые tmake найдет в этом каталоге. В перых строчках будут указаны директивы создания makefile типа debug release qt и пр. которые можно менять для выбора нужной конфигурации.
  3. После того, как файл проекта создан, можно сгенерировать и сам makefile -- это делается командой
    perl \usr\local\tmake\bin\tmake project.pro -o Makefile -unix
    Не забывайте последний ключик, поскольку иначе вам будет сооружен makefile для win32. :)
    В результате этих манипуляций мы получаем готовый к употреблению makefile, который можно запустить командой make, и если ваш проект не содержит ошибок, то в итоге вы получите готовый exe-файл.

Установка

  1. Находим где-нибудь -- например, на hobbes perl (как минимум пятый);
  2. Распаковываем содержимое файла tmake.zip;
  3. В переменную PATH добавляем ссылку на каталог make\bin;
  4. Добавляем переменную TMAKEPATH, указывающую на каталог с нужным вам template (обычно это tmake\lib\gnu-g++). На этом установка закончена.

Для первичной настройки необходимо отредактировать содержимое файла tmake\lib\gnu-g++\tmake.conf, где нужно выставить необходимые вам параметры (ключи компиляции, сам компилятор, опции линковки и прочее). Если вам необходимо создать какой-то особенный makefile, то редактированию уже подвергается файл tmake\lib\unix\generic.t.

tmake.zip можно взять здесь (tmake.zip, 28k).

Надеюсь, этот скрипт поможет создавать удобные makefile не только в юниксах, но и в OS/2.

Если у вас возникнут вопросы по установке и использованию этого скрипта, то разрешить их можно на сервере производителя www.troll.no или спросив у меня:

Alex Galkin
IRC nick: |Kovu|
UIN 33631896 - |Kovu|

---
Интересные ссылки:

---

---
Комментариев к странице: 0 | Добавить комментарий
---
Редактор: Дмитрий Бан
Оформление: Евгений Кулешов
(C) Russian Underground/2