Сборка программ Linux утилитой Src2pkg

Опубликовано mensh - ср, 04/28/2010 - 08:53

Создание программных пакетов для Slackware Linux не всегда является простым делом.

Способы создания пакетов для Slackware

Существуют два хороших способа создания пакетов для Slackware: программа CheckInstall; скрипты SlackBuild. Оба метода компилируют исходный код, создают структуру каталогов и пакуют все в один tgz-файл.

CheckInstall

При использовании CheckInstall стандартная команда make install подменяется командой checkinstall. Несовместимость с последним пакетом coreutils создало проблемы использования CheckInstall со Slackware начиная с версии 12.

SlackBuild

SlackBuild -- скрипты командной оболочки bash, сопровождающие конфигурирование, компиляцию и работу с архивами исходных кодов работают отлично. На сайте Slackbuilds.org можно найти много высококачественных SlackBuild-скриптов для широкого класса программного обеспечения, но при отсутствии необходимого скрипта не каждый способен написать его самостоятельно.

Src2pkg

В данной ситуации прекрасной альтернативой может явиться использование утилиты Src2pkg, позволяющей не только собирать пакеты из исходных кодов, но также и создавать их из Debian и RPM бинарных пакетов, а также обычных бинарных файлов.

Пример сборки пакета Slackware утилитой Src2pkg

Для сборки программного пакета в сборочный каталог помещаем исходники и выполняем команду сборки из-под root:

oleg@localhost:~/build/src2pkg:$ ls
dwm-1456ca0c94b7.tar.gz
oleg@localhost:~/build/src2pkg: sudo su
root@localhost:/home/oleg/build/src2pkg:# src2pkg -C -VV -W dwm-1456ca0c94b7.tar.gz
...
Package Creating - Seccessful! - Package Location:
/home/oleg/build/src2pkg/dwm-1456ca0c94b7-i486-1.tgz
Deleting build directories - SRC_DIR PKG_DIR Done

Документация

На man-странице программы упомянуто множество ключей, позволяющих придать гибкость процессу сборки пакета. В дополнение к man-странице у src2pkg есть документация, которая находится в каталоге /usr/doc/src2pkg-x.x.x.

Дополнительная документация включает HTML-странички с описанием разных функций приложения, README-файлы и текстовый файл FAQ. Документация информативна и полезна, написана умело и содержит большое количество полезных советов по сборке пакетов.