Я видел много подобных проблем, разбросанных по всему сайту, но ни одна из них не соответствует той проблеме, с которой я столкнулся. Я никогда раньше не создавал RPM, поэтому я совершенно новичок в этой процедуре. По сути, все, что мне нужно, - это один файл, созданный в /etc/yum.repos.d в CentOS. У меня есть файл спецификаций «голые кости», который я собрал следующим образом:
Name: cloud.repo
Version: 1.0
Release: 0
Summary: Configuration for yum.cloud.local
Group: System/Base
License: None
URL: None
Source0: cloud.repo
BuildArch: noarch
Prefix : /etc/yum.repos.d
%description
This package contains the yum.cloud.local repository
%install
%{__install} -m 600 %{SOURCE0} %{buildroot}/etc/yum.repos.d/
%files
/etc/yum.repo.d/cloud.repo
%changelog
Затем я запускаю следующую команду:
$ rpmbuild -ba SPECS/yum.cloud
Который впоследствии терпит неудачу со следующим:
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.AUmyZc
+ umask 022
+ cd /home/rpmbuild/rpmbuild/BUILD
+ '[' /home/rpmbuild/rpmbuild/BUILDROOT/xchangingcloud.repo-1.0-0.x86_64 '!=' / ']'
+ rm -rf /home/rpmbuild/rpmbuild/BUILDROOT/xchangingcloud.repo-1.0-0.x86_64
++ dirname /home/rpmbuild/rpmbuild/BUILDROOT/xchangingcloud.repo-1.0- 0.x86_64
+ mkdir -p /home/rpmbuild/rpmbuild/BUILDROOT
+ mkdir /home/rpmbuild/rpmbuild/BUILDROOT/xchangingcloud.repo-1.0-0.x86_64
+ LANG=C
+ export LANG
+ unset DISPLAY
+ /usr/bin/install -m 600 /home/rpmbuild/rpmbuild/SOURCES/xchangingcloud.repo /home/rpmbuild/rpmbuild/BUILDROOT/xchangingcloud.repo-1.0- 0.x86_64/etc/yum.repos.d/
/usr/bin/install: target `/home/rpmbuild/rpmbuild/BUILDROOT/xchangingcloud.repo-1.0- 0.x86_64/etc/yum.repos.d/' is not a directory: No such file or directory error: Bad exit status from /var/tmp/rpm-tmp.AUmyZc (%install)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.AUmyZc (%install)
Я думаю, что я понимаю, почему это терпит неудачу, к сожалению, у меня нет достаточного количества знаний, чтобы быть в состоянии решить это. Я вижу, что ошибка жалуется не на каталог: такого файла или каталога нет, и я предполагаю, что /home/rpmbuild/rpmbuild/BUILDROOT/cloud.repo-1.0-0.x86_64/etc/yum.repos. d/ должен присутствовать , однако, я просто знаю , как этого добиться.