|
||||
| : Новости : Форум : Поддержка : Скачать: : Образование : Разработчику : Сайт : Пользователи | ||||
|
|
Как научиться собирать RPMВыдержки из треда, начавшегося с вопроса "есть тарбол, как бы сделать rpm?" в fido7.ru.linux. Присылайте комментарии и дополнения.
Aleksey Barabanov wrote: > Могу подсказать еще один. Метод старой макаки.
Кстати, да. Пожалуй что лучший для старта, параллельно с поглядыванием в max-rpm на непонятных местах.
> 1.Берется какой-нибудь аналогичный пакет. > 2.Внимательно изучается его спек. > 3.Спек переименовывается и переписывается. > 4.Собирается новый пакет. > Если 4 не проходит, то изучаются ошибки, вносятся исправления и снова к п.4. > Обращаю внимание, самое важное правильно найти объект для обезьяничанья.
Здесь есть пара нюансов.
1. Из дистрибутива, который желательно поближе к целевому по макросам. 2. В идеале — выдрав из cvs/svn, а не таская весь src.rpm
Сам порой лажу в http://cvs.pld-linux.org/cgi-bin/cvsweb/SPECS/ и мандривский cvs, но для редхатоидов многие из удобств цивилизации недоступны. _Не_ рекомендую спеки SUSE, они рободельные из сборочницы и потому читать их малоосмысленно.
— Michael Shigorin
Обновление пакетаИз обсуждения уязвимости в nginx
В случае уже доступного пакета алгоритм в случае nginx примерно таков: - rpm -qi nginx, смотрим Source RPM - гуглим найденный src.rpm - качаем из наиболее достоверного источника - rpm -i nginx-*.src.rpm - идём в RPM/SOURCES, который будет или под /usr/src, или в $HOME - качаем текущий тарбол - идём в ../SPECS - vim nginx.spec - ищем Version:, заменяем на соответствующую тарболу - рядом Release: сбрасываем в что-нить вроде 1 (или alt0.1, или 1mypkg…) - ищем %changelog, пишем по образу и подобию в его начало запись о содеянном (в альте для этого есть утилитка add_changelog) - rpm -ba nginx.spec (если будет ругаться, что чего-то нужного из BuildRequires: не стоит, то ставим и повторяем) - при удаче получаем собранные исходный и бинарный пакеты, последний доставляем-ставим - при неудаче смотрим, что взорвалось — старые патчи отвалились, новый компилятор не собирает — и принимаем действия по необходимости (см. тж. Software-Building-HOWTO)
@ 16.09.2009 12:54 |
См. тж. |
||
|
|
|
|||