我被要求为我们的 OPS 团队制作 RPM 包以安装我们的软件。我发现 ant 有一个 RPM 任务并开始使用它。我根据这个链接填充了一个规范文件,这个和这个。然而,我现在陷入了僵局。我不断从 RPM 任务中收到“[rpm] : command not founderror: Bad exit status from /var/tmp/rpm-tmp.VNmA3k (%prep)”。
我使用了 RPMBUILD,得到了完全相同的错误,除了 /var/tmp/rpm-tmp。每次都有不同的文件扩展名。如果我转到第 36 行的那个文件,我会找到“^M”。现在这个文件似乎是由 RPMBUILD 工具生成的,所以我现在可以控制它了。
我究竟做错了什么?
规格文件:
Name: SYJBoss7
Version: 1.0
Release: 1
Summary: Esentially a JBoss 7.1 release from the SwitchYard team, with custom modules for genvods
Group: <our group name>
License: none
URL: none
Source0: file:///tmp/SYJBoss7.tar.gz
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
%description
%prep
%setup -q
%build
pwd
%install
rm -rf %{buildroot}
mkdir -p $RPM_BUILD_ROOT/opt/swithcyard/
install -s SYJboss7 $RPM_BUILD_ROOT/opt/swithcyard/
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%doc
$RPM_BUILD_ROOT/opt/swithcyard/
%changelog
ant rpm 命令的输出:
[rpm] Building the RPM based on the example.spec file
[rpm] Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.VNmA3k
[rpm] + umask 022
[rpm] + cd /tmp/rpm/SYJboss7/BUILD
[rpm] + cd /tmp/rpm/SYJboss7/BUILD
[rpm] + rm -rf SYJBoss7-1.0
[rpm] + /bin/tar -xf -
[rpm] + /usr/bin/gzip -dc /tmp/rpm/SYJboss7/SOURCES/SYJBoss7.tar.gz
[rpm] + STATUS=0
[rpm] + '[' 0 -ne 0 ']'
[rpm] + cd SYJBoss7-1.0
[rpm] + /bin/chmod -Rf a+rX,u+w,g-w,o-w .
[rpm] + $'\r'
[rpm] /var/tmp/rpm-tmp.VNmA3k: line 36:
[rpm] : command not founderror: Bad exit status from /var/tmp/rpm-tmp.VNmA3k (%prep)
[rpm] Bad exit status from /var/tmp/rpm-tmp.VNmA3k (%prep)
[rpm]
[rpm]
[rpm] RPM build errors: