rpmbuild 正在寻找错误的源目录



我正在尝试打包python和png文件的集合。不涉及编译。我通过以下命令执行此操作

mkdir -p $(WORKDIR)/rpmbuild/{BUILD,RPMS,RPMS/noarch,SOURCES,SPECS}
cp utp.spec $(WORKDIR)/rpmbuild/SPECS
tar  -zcf $(WORKDIR)/rpmbuild/SOURCES/utp-1.0.tgz --exclude={*.swp,.git,.gitignore,utp.spec,makefile} -C .. ./utp
rpmbuild -ba utp.spec

我收到以下错误:

medi@medi:~/work/utp> rpmbuild -v -ba utp.spec
error: Bad source: /home/medi/rpmbuild/SOURCES/utp-1.0.tgz: No such file or directory

第一个提示是rpmbuild应该查看"/home/medi/work/rpmbuild/SOURCE/*.tgz"。注意缺少"工作/"。所以不知何故,rpmbuild 并没有读懂我的意图。逻辑表明它将是utp.spec文件中的内容。这是我的规范文件

medi@medi:~/work/utp> cat utp.spec
Name:       utp
Version:    1.0
Release:    1%{?dist}
Summary:    Universal Test Platform
Group:      Applications/Engineering
License:    Proprietary
URL:        http://www.example.com
Source0:    %{name}-%{version}.tgz
# BuildRequires:    
# Requires: 
%description
some description

%prep
%setup -q

%build
%configure
make %{?_smp_mflags}

%install
%make_install

%files
%doc

%changelog

另外,很可能我不需要所有的规范指令。请让我知道我应该放弃哪个。

%setup -q

希望源TGZ 包含名为%name-%version的目录,因此utp-1.0.如果 tgz 中的目录名称不同,则可以使用:

%setup -q -n <subdir-name>

rpmbuild --define "_topdir/home/medi/work/rpmbuild" -v -ba utp.spec 或仅适用于源文件夹 rpmbuild --define "_sourcedir/home/medi/work/rpmbuild/SOURCE/" -v -ba utp.spec

您可以使用这些命令来控制它可以查找内容的位置。

相关内容

最新更新