Быстрое создание rpm пакета в CentOS с помощью Checkinstall

Для того, чтобы создать RPM пакет используя исходный код приложения вам понадобится Checkinstall.

Это самый простой и быстрый способ создания RPM пакетов. Готовый пакет можно устанавливать на другие сервера без необходимости компилировать его каждый раз.

Установите обработчики rpm пакетов:

yum install -y rpm-build rpmdevtools

После установки выполните следующую команду. Она создаст зависимости rpm пакетов:

rpmdev-setuptree

К сожалению Checkinstall недоступен в репозитариях CentOS. Солный список rpm пакетов доступен на следующей странице:
http://rpm.pbone.net/index.php3?stat=3&search=checkinstall&srodzaj=3

Его нужно скачать и установить:

wget -no-check-certificate https://filebox.ece.vt.edu/~mclint/puppet/files/checkinstall-1.6.2-3.el6.1.x86_64.rpm  
rpm -i checkinstall-1.6.2-3.el6.1.x86_64.rpm

Раньше использовалась другая ссылка и когда она перестала работать я чуть не пришел у ужас. В общем нашел другую, скачал и разместил у себя на сервере:

wget /wp-content/uploads/2016/04/01/checkinstall-1.6.2-3.el6.1.x86_64.rpm

После этого checkinstall готов к использованию. Используйте его вместо make install при сборке пакетов.

Следующая конструкция не будет устанавливать приложение, а подготовит пакет готовый к установке и покажет его местонахождение:

checkinstall -install=no

Например:

**********************************************************************

 Done. The new package has been saved to

 /root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm
 You can install it in your system anytime using:

      rpm -i httpd-2.2.31-1.x86_64.rpm

**********************************************************************

Готовый пакет можно установить следующей командой:

rpm -i /root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm

Если же Вы собрали пакет для обновления существующего в системе, тогда используйте:

rpm -U /root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm