用 RPM 指定 installdir/builddir

Specify installdir/builddir with RPM

我对使用 RPM 构建和分发包比较陌生。

我正在尝试实现以下功能,但我对如何管理它感到有点困惑:

  1. 在构建机器上,RPM 包应该在我的帐户下构建,例如在 /home/username/rpmbuild 下。此文件夹具有正确的结构(例如包含 SPECS、RPMS、SOURCES 等)。我要打包的文件基本上是位于 SOURCES 目录中的 .tgz 文件的二进制文件。我也有 root 访问权限,所以这应该不是问题。
  2. 在“'client'”机器上,软件应安装在特定目录下,例如/specific_mountpoint/program_name。即使用户应该执行没有附加参数的简单 rpm -ivh rpm_name.rpm 命令,也会发生这种情况。

我有以下问题:

非常欢迎任何想法和具体的规范文件。

我正在使用 RPM v4.8。我之所以提到这一点,是因为我正在阅读的内容已弃用特定标志。

非常感谢!

不,你很接近但有点偏离。您在 buildroot 中构建的内容相当于目标计算机上的根目录。所以把你的东西放在 /home/username/rpmbuild/BUILDROOT/packagename-version/specific_mountpoint/program_name AKA %{buildroot}/specific_mountpoint/program_name 中。然后在 %files 中列出目的地位置,例如%doc /specific_mountpoint/program_name/README.