Введение в разработку приложений на платформе Atom/MeeGo. Граничин О.Н - 26 стр.

UptoLike

26
· GNU Compiler Collection (GCC): набор компиляторов проекта GNU.
· GNU Binutils: набор инструментов для управления объектными файлами.
· GNU Bison: программа, предназначенная для автоматического создания синтаксических
анализаторов по заданному описанию грамматики.
· GNU m4: язык макроопределений.
· GNU Debugger (GDB): отладчик проекта GNU.
· GNU build system (autotools): утилиты для сборки и компиляции исходного кода. Состоит из
autoconf, automake, autoheader и libtool.
Рассмотрим наиболее значимые и часто используемые программистами инструменты,
разработанные в проекте GNU и являющиеся неотъемлемой частью дистрибутивов операционной
системы Linux.
4.2.1. Описание GNU autotools
Как уже было упомянуто выше, GNU autotools состоит из некоторого стандартного набора утилит,
которые предназначены для компиляции исходного кода программы под целевую платформу. При
помощи них автоматизировано решается задача переносимости кода в различных Unix-системах.
Переносимость кодаодна из сложных проблем, которую надо решать при разработке
программного обеспечения. Компиляторы языка С, например, могут существенно отличаться друг от
друга. Некоторые стандартные функции могут быть пропущены, иметь иное имя или объявляться в
другом заголовочном файле. Все эти ситуации могут быть обработаны путем заключения различных
кусков кода в директивы для препроцессора типа #if, #ifdef и других. Но это обязывает разработчика
предусматривать огромное количество вариантов систем и тщательно продумывать, как код будет на
них выполняться.
Набор autotools был разработан для устранения этой проблемы. Он вызывается конечным
пользователем в виде комбинации команд: ./configure && make && make install. Autotools состоит из
трех основных компонент: autoconf, automake и libtool.
Утилита autoconf
Autoconf — это утилита для создания скриптов командного процессора, которые автоматически
конфигурируют пакеты с исходным кодом так, чтобы они могли работать на множестве UNIX-
подобных систем.
Утилита autoconf создает сценарий установки для включения их в распространяемый код, который
по умолчанию называется configure. На целевой машине он выполняется независимо и не требует
инсталляции утилиты в системе. Метод установки программного обеспечения при помощи сценария
configure получил широкое распространение и хорошо знаком многим пользователям программ с
исходным кодом. Для установки ПО, пакетизированного при помощи утилиты autoconf, как правило,
необходимо выполнить команды:
./configure
make
make install
Использование утилиты autoconf позволяет переносить приложение практически на любую Unix-
систему. Сценарий configure проверяет некоторые системные возможности целевой платформы и
формирует компоновочные make-файлы, учитывающие возможности текущей среды.
В зависимости от сложности приложения и требуемой степени его переносимости процесс
создания установочных сценариев может изменяться от достаточной простой процедуры до сложной.
В качестве общего руководства можно использовать последовательность действий, приведенную в
книге A. Гриффитса [1].
Утилита automake
Automake это утилита для автоматического создания файловMakefile.inиз файлов
‘Makefile.am’. Каждый файлMakefile.am’ фактически является набором макросов для программы
make. Типичный входной файл Automake является просто набором макроопределений.