Файл ошибок rpmbuild не найден, хотя файлы находятся в пути

Я сделал следующее, но получил ошибку при запуске rpmbuild

Файлы там в пути

Любая помощь или подсказка приветствуются

Спасибо

rpmbuild -vv --buildroot $PWD/root --target x86_64 -bb bin-show.spec
Building target platforms: x86_64
Building for target x86_64
Processing files: helloworld-1.0-1.x86_64
error: File not found: /nobackup/username/prod/packaging/redhat/bin-show/root/etc/testpackage.conf


RPM build errors:
    File not found: /nobackup/username/prod/packaging/redhat/bin-show/root/etc/testpackage.conf

где bin-show.spec

#
# Hello World Spec File
#
Summary: Hello world!
Name: helloworld
Version: 1.0
Release: 1
License: Proprietary
Group: Applications/Utilities

%description
This is my first RPM test package!

%files
/etc/testpackage.conf

и структура файлов

pwd
/nobackup/username/prod/packaging/redhat/bin-show

find . -name \*

./bin-show.spec
./root
./root/etc
./root/etc/testpackage.conf

2 ответа

Сообщения от rpmbuild может быть неясным. Это наверное жалуется

  • не то, что вашей файловой системе не хватает файла,
  • скорее, что соответствующий путь не существует под BUILDROOT каталог.

Обычно ожидается, что ваш spec-файл создаст набор файлов и каталогов под ~/rpmbuild/BUILDROOT который он соберет в пакет. Вы можете переопределить расположение BUILDROOT каталог (и, кажется, сделал это). Но ваш пакет ожидает

/etc/testpackage.conf

и (с учетом очевидного местоположения BUILDROOT каталог) вы дали

/root/etc/testpackage.conf

Томас почти прав насчет происхождения ошибки.

Однако rpmbuild ожидает, что файл присутствует в

%{buildroot}/%{_sysconfdir}/testpackage.conf

Вы должны либо создать его в %install раздел:

%install
echo some content > %{buildroot}/%{_sysconfdir}/testpackage.conf

или предоставить как SourceX:

Source1:  testpackage.conf

%install
cp -a %{SOURCE1} %{buildroot}/%{_sysconfdir}/

%files
%{_sysconfdir}/testpackage.conf
Другие вопросы по тегам