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