Инструменты пользователя

Инструменты сайта


ru:rpm_build_howto

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
ru:rpm_build_howto [2010/09/08 10:25] zetru:rpm_build_howto [2019/04/28 13:53] (текущий) – внешнее изменение 127.0.0.1
Строка 22: Строка 22:
 __**Примечание**__: Замените выражение //$USER// на имя вашего пользователя в системе __**Примечание**__: Замените выражение //$USER// на имя вашего пользователя в системе
  
-В каталоге ///home/$USER//// создаём файл **.rpmmacros** со следующим содержимым:+В каталоге ///home/$USER/// создаём файл **.rpmmacros** со следующим содержимым:
  
 <code> <code>
Строка 105: Строка 105:
  
  
-*Способ 1.* С помощью утилиты *checkinstall* 
  
 +==== Шаг 4. Сборка пакета ====
  
 +
 +=== Способ 1. С помощью утилиты checkinstall ===
  
 Переходим в каталог с исходными кодами программы и выполняем команды конфигурирования и сборки Переходим в каталог с исходными кодами программы и выполняем команды конфигурирования и сборки
- 
- 
  
 <code> <code>
- 
 cd /home/$USER/psi_dev/psi cd /home/$USER/psi_dev/psi
- 
 ./configure && make && checkinstall ./configure && make && checkinstall
- 
 </code> </code>
  
 +Здесь вместо команды **make install** вводим команду **checkinstall**, которая соберёт пакет и поместит его в каталог **BUILD_ROOT/RPMS**, однако придётся ответить на некоторые вопросы.
  
  
-Здесь вместо команды *make install* вводим команду *checkinstall*, которая соберёт пакет и поместит его в каталог *BUILD_ROOT/RPMS*, однако придётся ответить на некоторые вопросы. 
  
  
 +=== Способ 2. С помощью утилиты rpm-build и spec-файла ===
  
-*Способ 2.* С помощью утилиты rpm-build и spec-файла +После того, как были наложены патчи, необходимо запаковать папку //psi// в архив и скопировать её в **BUILD_ROOT/SOURCES**
- +
- +
- +
-После того, как были наложены патчи, необходимо запаковать папку psi в архив и скопировать её в *BUILD_ROOT/SOURCES* +
- +
  
 <code> <code>
- 
 mv psi psi-0.14_dev mv psi psi-0.14_dev
- 
 tar -pczf psi-0.14_dev.tar.gz psi-0.14_dev tar -pczf psi-0.14_dev.tar.gz psi-0.14_dev
- 
 cp psi-0.14_dev.tar.gz /home/$USER/BUILD_ROOT/SOURCES cp psi-0.14_dev.tar.gz /home/$USER/BUILD_ROOT/SOURCES
- 
 </code> </code>
  
- +Далее в каталоге //BUILD_ROOT/SPECS// создаём файл **psi.spec** следующего содержания:
- +
-Далее в каталоге *BUILD_ROOT/SPECSсоздаём файл *psi.spec* следующего содержания: +
- +
  
 <code> <code>
- +Summary: Client application for the XMPP network
-Summary: Client application for the Jabber network +
 Name: psi Name: psi
- 
 Version: 0.14_dev Version: 0.14_dev
- 
 Release: 3%{dist} Release: 3%{dist}
- 
 License: GPL License: GPL
- 
 Group: Applications/Internet Group: Applications/Internet
- 
 URL: http://code.google.com/p/psi-dev/ URL: http://code.google.com/p/psi-dev/
- 
 Source0: %{name}-%{version}.tar.gz Source0: %{name}-%{version}.tar.gz
- 
  
  
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
- 
  
  
 BuildRequires: openssl-devel, gcc-c++, zlib-devel BuildRequires: openssl-devel, gcc-c++, zlib-devel
- 
 %{!?_without_freedesktop:BuildRequires: desktop-file-utils} %{!?_without_freedesktop:BuildRequires: desktop-file-utils}
- 
  
  
 %description %description
- 
 Psi is the premiere Instant Messaging application designed for Microsoft Windows,  Psi is the premiere Instant Messaging application designed for Microsoft Windows, 
- +Apple Mac OS X and GNU/Linux. Built upon an open protocol named XMPP
-Apple Mac OS X and GNU/Linux. Built upon an open protocol named Jabber +
 si is a fast and lightweight messaging client that utilises the best in open  si is a fast and lightweight messaging client that utilises the best in open 
- 
 source technologies. The goal of the Psi project is to create a powerful, yet  source technologies. The goal of the Psi project is to create a powerful, yet 
- +easy-to-use XMPP client that tries to strictly adhere to the XMPP drafts. 
-easy-to-use Jabber/XMPP client that tries to strictly adhere to the XMPP drafts. +and XMPP JEPs. This means that in most cases, Psi will not implement a feature  
- +unless there is an accepted standard for it in the XMPP community. Doing so 
-and Jabber JEPs. This means that in most cases, Psi will not implement a feature  +
- +
-unless there is an accepted standard for it in the Jabber community. Doing so  +
 ensures that Psi will be compatible, stable, and predictable, both from an end-user  ensures that Psi will be compatible, stable, and predictable, both from an end-user 
- 
 and developer standpoint. and developer standpoint.
- 
  
  
 %prep %prep
- 
 %setup %setup
- 
  
  
 %build %build
- 
 qconf qconf
- 
 ./configure \ ./configure \
- 
         --prefix="%{_prefix}" \         --prefix="%{_prefix}" \
- 
         --bindir="%{_bindir}" \         --bindir="%{_bindir}" \
- 
         --datadir="%{_datadir}"\         --datadir="%{_datadir}"\
- 
         --release\         --release\
- 
         --no-separate-debug-info\         --no-separate-debug-info\
- 
  --enable-plugins \ /*эта строчка включает компиляцию с интерфесом подключения плагинов*/  --enable-plugins \ /*эта строчка включает компиляцию с интерфесом подключения плагинов*/
- 
  --enable-qtwebkit\ /*эта строчка включает компиляцию с webkit*/  --enable-qtwebkit\ /*эта строчка включает компиляцию с webkit*/
- 
         --qtdir="$QTDIR"         --qtdir="$QTDIR"
- 
 %{__make} %{?_smp_mflags} %{__make} %{?_smp_mflags}
- 
  
  
 %install %install
- 
 %{__rm} -rf %{buildroot} %{__rm} -rf %{buildroot}
- 
  
  
 %{__make} install INSTALL_ROOT="%{buildroot}" %{__make} install INSTALL_ROOT="%{buildroot}"
- 
  
  
 # Install the pixmap for the menu entry # Install the pixmap for the menu entry
- 
 %{__install} -Dp -m0644 iconsets/system/default/logo_128.png}} \ %{__install} -Dp -m0644 iconsets/system/default/logo_128.png}} \
- 
     %{buildroot}%{_datadir}/pixmaps/psi.png}} ||:     %{buildroot}%{_datadir}/pixmaps/psi.png}} ||:
- 
  
  
 %post %post
- 
 touch --no-create %{_datadir}/icons/hicolor || : touch --no-create %{_datadir}/icons/hicolor || :
- 
 %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
- 
- 
  
 %postun %postun
- 
 touch --no-create %{_datadir}/icons/hicolor || : touch --no-create %{_datadir}/icons/hicolor || :
- 
 %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
- 
  
  
 %clean %clean
- 
 %{__rm} -rf %{buildroot} %{__rm} -rf %{buildroot}
- 
  
  
 %files %files
- 
 %defattr(-, root, root, 0755) %defattr(-, root, root, 0755)
- 
 %doc COPYING README TODO %doc COPYING README TODO
- 
 %{_bindir}/psi %{_bindir}/psi
- 
 %{_datadir}/psi/ %{_datadir}/psi/
- 
 %{_datadir}/pixmaps/psi.png %{_datadir}/pixmaps/psi.png
- 
 %{_datadir}/applications/psi.desktop %{_datadir}/applications/psi.desktop
- 
 %{_datadir}/icons/hicolor/*/apps/psi.png %{_datadir}/icons/hicolor/*/apps/psi.png
- 
 %exclude %{_datadir}/psi/COPYING %exclude %{_datadir}/psi/COPYING
- 
 %exclude %{_datadir}/psi/README %exclude %{_datadir}/psi/README
- 
 </code> </code>
  
- +Переходим в каталог //BUILD_ROOT/SPECS// и запускаем сборку пакета
- +
-Переходим в каталог *BUILD_ROOT/SPECSи запускаем сборку пакета +
- +
  
 <code> <code>
- 
 cd /home/$USER/BUILD_ROOT/SPECS cd /home/$USER/BUILD_ROOT/SPECS
- 
 rpmbuild -bb psi.spec rpmbuild -bb psi.spec
- 
 </code> </code>
  
- +Опция **-bb** указывает программе на сборку бинарного пакета. После удачной сборки пакет можно забрать из директории //BUILD_ROOT/RPMS/iXXX// (в зависимости от архитектуры) и установить командой:
- +
-Опция *-bb* указывает программе на сборку бинарного пакета. После удачной сборки пакет можно забрать из директории *BUILD_ROOT/RPMS/iXXX(в зависимости от архитектуры) и установить командой: +
- +
  
 <code> <code>
- 
 rpm -ihv psi-0.14_dev-3.mdv2008.1.i586.rpm  rpm -ihv psi-0.14_dev-3.mdv2008.1.i586.rpm 
- 
 </code> </code>
  
 +__**Примечание**__: Имя пакета приведено для примера.
  
 +Также можно добавить цифровую подпись для пакета, сделать это можно с помощью следующей команды:
  
-_Примечание:_ имя пакета приведено для примера.+<code> 
 +rpm --addsign psi-0.13_dev-3.mdv2008.1.i586.rpm 
 +</code>
  
  
  
-Также можно добавить цифровую подпись для пакета, сделать это можно с помощью следующей команды 
  
- 
- 
-<code> 
- 
-rpm --addsign psi-0.13_dev-3.mdv2008.1.i586.rpm 
- 
-</code> 
ru/rpm_build_howto.1283941512.txt.gz · Последнее изменение: 2010/10/17 15:36 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki