Что я делаю, как пользователь ROOT:
Установите SRPM, как и любой другой пакет ( rpm --install [source-rpm-filename]
)
Изучите /root/rpmbuild/SPECS
каталог и найдите файл specs, соответствующий вашему пакету
rpmbuild -bb /root/rpmbuild/SPECS/[found-filename]
Полученные двоичные пакеты затем помещаются в /root/rpmbuild/RPMS/
каталог, который готов к установке с помощью стандартной rpm --install
команды.
ПРИМЕЧАНИЕ: это просто строит то, что находится в стандартном двоичном пакете. Я пишу это, отвечая на конкретный вопрос, а не о том, как делать изменения в источнике и создавать новые пакеты.
Чтобы внести изменения, вы можете либо предоставить патчи в качестве входных данных и изменить файл SPECS .... или вы можете заменить стандарт, *.tar.bz2
расположенный в /root/rpmbuild/SOURCES
вашем, на изменение, а затем выполнить сборку, как описано выше.
Остерегайтесь, возможно, вам придется изменить пакет SPECS, чтобы он работал (обычно путем извлечения исправлений и изменения некоторых имен файлов, которые запрограммированы файлом SPECS).
РЕДАКТИРОВАТЬ
Кажется, сборка rpms как root - плохая практика ( источник ). Он отлично работает как пользователь без полномочий root.
Пошаговая инструкция по добавлению патча ( отсюда ):
- Скопируйте ваш патч в
rpmbuild/SOURCES
.
- Отредактируйте
rpmbuild/SPECS/package.spec
и добавьте Patch0: mypatch.patch
сразу после Source0: ...
строки.
- После
%setup ...
строки добавьте %patch0 -p1
строку
Теперь он будет строить нормально, т.е. с:rpmbuild -ba SPECS/package.spec