在我正在构建的包中,Buildroot 目录中有符号链接。例如这个:
/home/sg/impkg/buildroot/dir1/bin/w_be -> /home/sg/impkg/buildroot/dir2/targ/be
Run Code Online (Sandbox Code Playgroud)
这是rpmbuild
因为错误而失败:
RPM build errors:
Symlink points to BuildRoot:
/home/sg/impkg/buildroot/dir1/bin/w_be -> /home/sg/impkg/buildroot/dir2/targ/be
Run Code Online (Sandbox Code Playgroud)
在我的%files
部分中,我只包含了buildroot
我想要的目录。以下是我的规范文件中的一个片段:
Summary: research compiler tool set
License: GPL
Name: %{name}
Version: %{version}
Release: %{release}
Source: %{name}-%{version}.tar.gz
Prefix: /usr
Group: Development/Tools
Autoreq: 0
Autoprov: 0
%description
research compiler tool set
%prep
%setup -q
%build
rm -rf %{buildroot}/%{name}-%{version}
mkdir %{buildroot}/%{name}-%{version}
cd %{buildroot}/%{name}-%{version} && %{_builddir}/%{name}-%{version}/./configure -- prefix=%{buildroot}/%{name}-%{version}
make %{?_smp_mflags} -C %{buildroot}/%{name}-%{version}
%install
cd %{buildroot}/%{name}-%{version} && make DESTDIR=%{buildroot}/%{name}-%{version} install
%clean
rm -rf %{buildroot}/%{name}-%{version}
%files
%defattr(755,-,-)
/%{name}-%{version}
Run Code Online (Sandbox Code Playgroud)
我必须遵守逻辑,这意味着我无法从 Makefile 中删除这些链接……我该如何解决这个问题并生成 RPM?