2010-05-06 3 views
10

Я заметил rpmbuild (-BB и --buildroot варианты) создает .rpm в разных местах, в зависимости от того, какую ОС вы используете:Как установить папку назначения rpmbuild

  • GNU/Linux Ubuntu < = 9,04 :/USR/SRC/об/...
  • GNU/Linux Ubuntu> = 9,10:/Главная/rpmbuild/...
  • GNU/Linux Fedora:/USR/SRC/RedHat/...

Итак, как я могу вручную установить папку назначения для всех ОС?

+0

также связанные https://stackoverflow.com/questions/6285792/ как-ду-вы-делать-TOPDIR-относительное-к-месте-оф-спецификации-файла-когда-строительный/8243413 # 8243413 –

ответ

13

Ответ себя, добавив:

%define _rpmdir /outputdir 

в .spec файл.

1

Возможно, вы захотите использовать аргумент команды --define: например, это будет отправлять файлы rpm в текущий каталог.

rpmbuild anything.spec --bb --define "_rpmdir $(pwd)" 

Это выведет результат rpmsto Dir

rpmbuild anything.spec --bb --define "_rpmdir /outputdir" 

Или, возможно, что-то более сложное, таких как Custom gradle task for rpmbuild.

0

Настройка среды rpmbuild в/дома/http://www.linuxquestions.org/questions/linux-software-2/need-rpm-package-for-php-version-5-2-7-and-up-on-redhat-5-1-a-766486/#13

На самом деле это не рекомендуется использовать/USR/SRC/**. То есть используя/home/[name]/rpms/вы можете работать как непривилегированный пользователь. Для сборки пакетов не требуется su или sudo.


0

Только маленький комментарий .. добавление "% определяют _rpmdir/OutputDir" для файла спецификации также поддержка по rpmbuild в ОС AIX

Смежные вопросы