Как управлять каталогом rpmbuild buildroot и install
Меня смущают некоторые каталоги в rpmbuild.
1: buildroot: который должен использоваться для хранения файлов, которые должны быть установлены, когда двоичный пакет установлен конечным пользователем.
Вопросы: как управлять этим каталогом? Какое сборочного окружения означают?
$ cat 3.spec
..
BuildRoot: /opt/abc
..
%prep
echo %{buildroot}
echo $RPM_BUILD_ROOT
Что бы я ни задал BuildRoot, я получаю результат, который был определен в /usr/lib/rpm/macros. Если я определю %buildroot в ~/.rpmmacros, я получу результат из него.
2: Как я могу контролировать пункт назначения когда мы устанавливаем пакет rpm? Например: rpm -ivh xxx.rpm, где будут установлены файлы?
1 ответ:
Вы сами создаете подкаталоги в
%installили где угодно.Пример: вы хотите установить все ваши файлы в
/opt/mypkg/, но также хотите файл конфигурации/etc/mypkg.conf. Итак, в разделе%installВы:mkdir -p %{buildroot}/opt/mypkg mkdir -p %{buildroot}/etcТаким образом, вы воссоздаете дерево, которое хотите установить, все с
%{buildroot}в качестве эквивалента целевого/.