Опишу кратко создание RPM-пакетов в CentOS x64 на примере vlc с использованием утилиты checkinstall:
Простой способ (checkinstall):
Данный способ можно также использовать и для DEB пакетов.
- Установка пакета checkinstall
# для Debian
sudo apt-get install checkinstall
# Для Red Hat (CentOS и т.п.)
sudo
Если пакет не найден, то идем на http://checkinstall.izto.org/download.php
качаем исходники
wget http://checkinstall.izto.org/files/source/checkinstall-1.6.2.tar.gz
Разархивируем и перейдем в папку
tar xvzf checkinstall-*.tar.gz
cd checkinstall-*
Устанавливаем checkinstall
./configure
make
sudo make install
Так теперь качаем исходники vlc и распаковываем их
wget http://download.videolan.org/pub/videolan/vlc/1.1.13/vlc-1.1.13.tar.bz2
tar xvjf vlc-*.tar.bz2
Примечание: в системе должны быть установлены все компоненты для сборки из исходников
# Для Debian
sudo apt-get install* autoconf automake libtool autotools-dev dpkg-buildpackage fakeroot
# Для Ubuntu - один метапакет
sudo apt-get install build-essential
# Для Red Hat
sudo yum install gcc gcc-c++ autoconf automake libtool
Примечание: настройки для конфигурации задаются индивидуально для каждого случая, в зависимости от того, что вы хотите собрать.
Посмотреть набор параметров можно так:
# ./configure --help
Предварительно ставим необходимые компоненты.Дальше конфигурируем vlc и делаем make
# yum install libmodplug-devel.x86_64
# ./configure --prefix=/usr --enable-x264 --enable-mod --enable-merge-ffmpeg --disable-nls --disable-mozilla --disable-dbus --disable-lua --disable-mad --disable-postproc --disable-x11 --without-x --disable-xcb --disable-xvideo --disable-xosd --disable-opengl --disable-glx --disable-qt4 --disable-skins2 --disable-libgcrypt --disable-mtp --disable-udev --disable-bonjour --disable-projectm --disable-remoteosd --disable-v4l2 --disable-avcodec --disable-a52
# make
Примечание: Если каких-то компонентов системы у Вас не хватает, то в процесе конфигурирования Вам будет сообщено, каких именно библиотек нет и Вам их соответственно нужно установить либо отключить их поддержку в устанавливаем приложении. У меня был предварительно установлен из сорсов ffmpeg с поддержкой x264, поэтому при сбрке я указал параметры --enable-merge-ffmpeg, --disable-avcodec и --disable-a52Запускаете checkinstall. Выбираете тип пакета (RPM, DEB, TGZ).
Задаете данные для пакета :
TAssuming default values.
**************************************
**** RPM package creation selected ***
**************************************
This package will be built according to these values:
1 - Summary: [ The packet is collected from source codes vlc-1.1.13. ]
2 - Name: [ vlc ]
3 - Version: [ 1.1.13 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ Applications/System ]
7 - Architecture: [ x86_64 ]
8 - Source location: [ vlc-1.1.13 ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
11 - Provides: [ vlc ]
Enter a number to change any of them or press ENTER to continue:
Примечание: можно сразу указывать, какой тип пакета нужен на выходе:
# sudo checkinstall -R
# Создает и устанавливает RPM пакет
# sudo checkinstall -D
# Создает и устанавливает DEB пакет
# sudo checkinstall -S
# Создает и устанавливает TGZ пакет (дистрибутивы: Slackware, Zenwalk, DeepStyle, Vektorlinux, Mops)
После установки обновляем перечень библиотек
ldconfig
Вроде все :)
Позже допишу создание RPM другими средствами...Ссылки:
Создание DEB / RPM пакета из исходников или как использовать checkinstall
Создание RPM пакетов из исходников
Создание RPM пакетов
Упаковка программ с помощью RPM, часть 1: Создание и распространение пакетовУпаковка программ с помощью RPM, часть 2: Обновление и деинсталляция программ
Упаковка программ с помощью RPM, часть 3: Разрешение зависимостей между пакетами
Комментариев нет:
Отправить комментарий