rpmbuild 错误:符号链接指向 BuildRoot

Say*_*yan 5 rpm

在我正在构建的包中,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?

Ign*_*ams 3

符号链接必须是相对的,以便包在安装后可以工作。修补 makefile 以解决此问题。