如何使RPM构建正确设置安装路径

时间:2012-09-06 13:38:14

标签: rpm rpmbuild rpm-spec

这是我第一次尝试构建RPM,我发现它有点令人困惑,还没有真正得到不同的变量,所以会对以下任何建议表示感谢..

我有以下规范文件:

BuildRoot       : /home/dm40477/rpmbuild/BUILD

%description
Package to deploy PROD Support scripts


%prep

zcat ~/rpmbuild/SOURCES/ITRS.tar.gz | tar -xvf -

%install
RPM_INSTALL_PREFIX=/var/opt

%files
%defattr(0622,muser,muser)
/ITRS/bin/SXS
/ITRS/bin/SXSRT
/ITRS/etc/SXS
/ITRS/etc/SXSRT

%changelog

它创建了rpm文件,但是当我在目标服务器上安装它时,它会安装在/ bin和/ etc中

源文件是以下dir结构中的gziped tar文件,除了将其安装在文件夹/ var / opt

中之外我想保留
/ITRS/bin/SXS
/ITRS/bin/SXSRT
/ITRS/etc/SXS
/ITRS/etc/SXSRT
  1. 如何在spec文件中设置安装路径?
  2. 我是否需要让dirs保持结构,还是会自动保留结构?
  3. 任何帮助都赞赏。

    由于

    d

2 个答案:

答案 0 :(得分:0)

RPM_INSTALL_PREFIX=/var/opt

将变量RPM_INSTALL_PREFIX设置为/ var / opt

/ITRS/bin/SXS
/ITRS/bin/SXSRT
/ITRS/etc/SXS
/ITRS/etc/SXSRT

不引用该变量。

答案 1 :(得分:0)

BuildRoot:/ home / dm40477 / rpmbuild / BUILD现在被忽略。

试试这个......

在你的家乡目录中创建一个名为.rpmmacros的文件,内容如下......

%_topdir /home/builder/rpmbuild

确保使用fakeroot进行建筑。

cd到/ home / builder / rpmbuild并运行rpmbuild命令。