Материал из Ananas
Версия от 20:08, 9 апреля 2009; Zxalexis (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Зачем это

Сборка собственного пакета RPM позволит Вам не только быстро развернуть приложение на группе машин, но и так же быстро (а главное, эффективно) его удалить, проверить зависимости и не дать случайно удалить один из подчиненных пакетов.

Что необходимо

Для компиляции пакета нам понадобится:

  • 1. Собственно, рабочая RPM-система, как реальная, так и виртуальная.
  • 2. Установленные в ней компилятор, заголовочные файлы необходимых библиотек, утилиты сборки пакетов RPM. Для дистрибутива Fedora это будут следующие пакеты:
   gcc-c++ (собственно, компилятор)
   libstdc++-devel (заголовочные файлы стандартной библиотеки C++)
   mysql-devel (заголовочные файлы СУБД MySQL)
   qt-devel (заголовочные файлы оконного интерфейса QT версии 3)
   qt-qsa-devel (заголовочные файлы языка скриптов для приложений QT)
   rpmdevtools (утилиты для настройки среды сборки)
   rpm-build (скрипты сборки пакетов)
  • 3. Дистрибутив исходных текстов проекта Ананас. Брать на sourceforge.net.
  • 4. Немного терпения, кофе, и отсутствие аллергии на командную строку.

Подготовка к сборке

Входим под своей учетной записью в систему. Устанавливаем зависимые пакеты для разработки (необходимы права root)

 yum install пакет

Проверяем, что нужные нам пакеты установлены:

 yum list installed|grep пакет

Сборка RPM

Выходим из-под рута (обычно проще это сделать комбинацией Ctrl-D), перемещаемся в свою домашнюю директорию (cd ~) и создаем дерево сборки:

 rpmdev-setuptree

После этого мы должны увидеть в своем каталоге папку rpmbuild с подпапками SPECS, SOURCES, RPMS, SRPMS Скачиваем архив с исходными текстами (ananas-X.Y.Z.tar.bz2), копируем его в недавно созданную папку SOURCES:

 cp ananas-X.Y.Z.tar.bz2 rpmbuild/SOURCES

Оригинал распаковываем:

 tar -xjvf ananas-X.Y.Z.tar.bz2

копируем необходимый (или все) spec-файлы в каталог SPECS

 cp ananas-X.Y.Z/ananas.spec.fedora rpmbuild/SPECS

Можно собирать пакет:

 rpmbuild -ba rpmbuild/SPECS/ananas.spec.fedora

В каталоге RPMS после успешной сборки появляется файл ananas-X.Y.Z.distr.arch.rpm.