ru:rpm_build_howto
Различия
Показаны различия между двумя версиями страницы.
Следующая версия | Предыдущая версия | ||
ru:rpm_build_howto [2010/09/05 23:21] – внешнее изменение 127.0.0.1 | ru:rpm_build_howto [2019/04/28 13:53] (текущий) – внешнее изменение 127.0.0.1 | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | #summary|RPM-build HOWTO with rpm-based | + | ====== |
- | #labels linux, | + | |
- | *Сборка RPM-пакета для RPM-based дистрибутивов (HOWTO)* | + | ===== Сборка RPM-пакета для RPM-based дистрибутивов (HOWTO) |
- | _Примечание: | + | __**Примечание**__: Пример сборки приведён на базе дистрибутива Mandriva Linux 2008.1 поэтому названия некоторых пакетов могут отличаться в вашем дистрибутиве. Также предполагается, |
- | *Шаг 1.* Подготовка системы для сборки пакета. | + | ==== Шаг 1. Подготовка системы для сборки пакета |
Прежде всего надо установить необходимое программное обеспечение. Для этого необходимо ввести следующие команды: | Прежде всего надо установить необходимое программное обеспечение. Для этого необходимо ввести следующие команды: | ||
+ | |||
< | < | ||
Строка 16: | Строка 16: | ||
</ | </ | ||
- | *Шаг 2.* После установки ПО необходимо подготовить среду для работы программы rpm-build | ||
- | _Примечание: | ||
- | В каталоге | + | ==== Шаг 2. После установки ПО необходимо подготовить среду для работы программы rpm-build ==== |
+ | |||
+ | __**Примечание**__: | ||
+ | |||
+ | В каталоге | ||
< | < | ||
Строка 36: | Строка 38: | ||
</ | </ | ||
- | _Примечание: | + | __**Примечание**__: Создать персональный ключ можно командой |
- | посмотреть идентификатор ключа можно командой *gpg --list-key* в секции pub после слэша ("/" | + | |
Далее создаём необходимые директории: | Далее создаём необходимые директории: | ||
Строка 54: | Строка 55: | ||
Теперь ваша система готова для сборки RPM-пакета. | Теперь ваша система готова для сборки RPM-пакета. | ||
- | P.S. для создания необходимых файлов и папок(применительно к Mandriva)можно воспользоваться скриптом [[http:// | + | __**P.S.**__ Для создания необходимых файлов и папок (применительно к Mandriva) можно воспользоваться скриптом [[http:// |
- | *Шаг 3.* Подготовка исходных кодов для сборки пакета | + | |
+ | |||
+ | |||
+ | ==== Шаг 3. Подготовка исходных кодов для сборки пакета | ||
Теперь нам необходимо получить исходные коды и патчи. | Теперь нам необходимо получить исходные коды и патчи. | ||
Строка 80: | Строка 84: | ||
</ | </ | ||
- | Далее нам нужно исправить в файле *applicationinfo.cpp* текущую ревизию, | + | Далее нам нужно исправить в файле |
- | Для этого нужно создать следующий файл *rev.sh* в каталоге | + | |
+ | Для этого нужно создать следующий файл | ||
< | < | ||
#!/bin/sh | #!/bin/sh | ||
Строка 97: | Строка 103: | ||
Теперь исходный код Psi+ готов для сборки. | Теперь исходный код Psi+ готов для сборки. | ||
- | *Способ 1.* С помощью утилиты | + | |
+ | |||
+ | |||
+ | ==== Шаг 4. Сборка пакета ==== | ||
+ | |||
+ | |||
+ | === Способ 1. С помощью утилиты checkinstall | ||
Переходим в каталог с исходными кодами программы и выполняем команды конфигурирования и сборки | Переходим в каталог с исходными кодами программы и выполняем команды конфигурирования и сборки | ||
Строка 106: | Строка 118: | ||
</ | </ | ||
- | Здесь вместо команды *make install* вводим команду *checkinstall*, | + | Здесь вместо команды |
+ | |||
+ | |||
- | *Способ 2.* С помощью утилиты rpm-build и spec-файла | + | === Способ 2. С помощью утилиты rpm-build и spec-файла |
- | После того, как были наложены патчи, необходимо запаковать папку psi в архив и скопировать её в *BUILD_ROOT/ | + | После того, как были наложены патчи, необходимо запаковать папку |
< | < | ||
Строка 118: | Строка 133: | ||
</ | </ | ||
- | Далее в каталоге | + | Далее в каталоге |
< | < | ||
- | Summary: Client application for the Jabber | + | Summary: Client application for the XMPP network |
Name: psi | Name: psi | ||
Version: 0.14_dev | Version: 0.14_dev | ||
Строка 129: | Строка 144: | ||
URL: http:// | URL: http:// | ||
Source0: %{name}-%{version}.tar.gz | Source0: %{name}-%{version}.tar.gz | ||
+ | |||
BuildRoot: %{_tmppath}/ | BuildRoot: %{_tmppath}/ | ||
+ | |||
BuildRequires: | BuildRequires: | ||
%{!? | %{!? | ||
+ | |||
%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 Jabber, | + | Apple Mac OS X and GNU/Linux. Built upon an open protocol named XMPP, |
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 | + | easy-to-use XMPP client that tries to strictly adhere to the XMPP drafts. |
- | and Jabber | + | 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 Jabber | + | unless there is an accepted standard for it in the XMPP community. Doing so |
ensures that Psi will be compatible, stable, and predictable, | ensures that Psi will be compatible, stable, and predictable, | ||
and developer standpoint. | and developer standpoint. | ||
+ | |||
%prep | %prep | ||
%setup | %setup | ||
+ | |||
%build | %build | ||
Строка 161: | Строка 181: | ||
--qtdir=" | --qtdir=" | ||
%{__make} %{? | %{__make} %{? | ||
+ | |||
%install | %install | ||
%{__rm} -rf %{buildroot} | %{__rm} -rf %{buildroot} | ||
+ | |||
%{__make} install INSTALL_ROOT=" | %{__make} install INSTALL_ROOT=" | ||
+ | |||
# Install the pixmap for the menu entry | # Install the pixmap for the menu entry | ||
%{__install} -Dp -m0644 iconsets/ | %{__install} -Dp -m0644 iconsets/ | ||
%{buildroot}%{_datadir}/ | %{buildroot}%{_datadir}/ | ||
+ | |||
%post | %post | ||
Строка 178: | Строка 202: | ||
touch --no-create %{_datadir}/ | touch --no-create %{_datadir}/ | ||
%{_bindir}/ | %{_bindir}/ | ||
+ | |||
%clean | %clean | ||
%{__rm} -rf %{buildroot} | %{__rm} -rf %{buildroot} | ||
+ | |||
%files | %files | ||
Строка 194: | Строка 220: | ||
</ | </ | ||
- | Переходим в каталог | + | Переходим в каталог |
< | < | ||
Строка 201: | Строка 227: | ||
</ | </ | ||
- | Опция *-bb* указывает программе на сборку бинарного пакета. После удачной сборки пакет можно забрать из директории | + | Опция |
< | < | ||
Строка 207: | Строка 233: | ||
</ | </ | ||
- | _Примечание: | + | __**Примечание**__: Имя пакета приведено для примера. |
- | Также можно добавить цифровую подпись для пакета, | + | Также можно добавить цифровую подпись для пакета, |
< | < | ||
rpm --addsign psi-0.13_dev-3.mdv2008.1.i586.rpm | rpm --addsign psi-0.13_dev-3.mdv2008.1.i586.rpm | ||
</ | </ | ||
+ | |||
+ | |||
+ | |||
+ |
ru/rpm_build_howto.1283728882.txt.gz · Последнее изменение: 2010/10/17 15:36 (внешнее изменение)