Linux RPMBUILD SPEC,如何安装到自定义位置 /usr/local/file1 而不是总是 /usr 目录

Linux RPMBUILD SPEC,如何安装到自定义位置 /usr/local/file1 而不是总是 /usr 目录

我在将 RPM 安装到 时遇到问题/usr/local/file1,它总是安装到/usr/local/file1/usr.我什至使用过./configure --prefix /usr/local/file1并且它仍然安装到/usr/local/file1/usr directory.

我想知道是否有人可以帮忙看看我的规范中哪里出了问题。

%setup -q -n file1-%{version}

%build
./autogen.sh
./configure --prefix=/usr/local/file1

%install
rm -rf $RPM_BUILD_ROOT/usr/local/file1
mkdir -p $RPM_BUILD_ROOT/usr/local/file1
make install DESTDIR=$RPM_BUILD_ROOT/usr/local/file1

%clean
rm -rf $RPM_BUILD_ROOT/usr/local/file1

%files
%defattr(-,root,root,-)
/usr/local/file1/

答案1

您的make install步骤不应重复以下路径:

make install DESTDIR=$RPM_BUILD_ROOT

更好的是,make_install宏应该为你做一切:

%install
%make_install

相关内容