-1

Я видел много подобных проблем, разбросанных по всему сайту, но ни одна из них не соответствует той проблеме, с которой я столкнулся. Я никогда раньше не создавал 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/ должен присутствовать , однако, я просто знаю , как этого добиться.

1 ответ1

0
%install
mkdir -p %{buildroot}/etc/yum.repos.d/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .