![使用 Cygwin 在 Windows 上构建 RPM,但在 Linux 上安装](https://linux22.com/image/73102/%E4%BD%BF%E7%94%A8%20Cygwin%20%E5%9C%A8%20Windows%20%E4%B8%8A%E6%9E%84%E5%BB%BA%20RPM%EF%BC%8C%E4%BD%86%E5%9C%A8%20Linux%20%E4%B8%8A%E5%AE%89%E8%A3%85.png)
我试图找出在 openSUSE 上安装 RPM 文件时遇到的问题,该文件是我在 Windows 上构建的(使用 Cygwin/rpmbuild)。
当我尝试在 Linux 上安装 RPM 时,出现错误消息
package <package>.rpm is intended for a different operating system
RPM 是通过调用构建的
rpmbuild --nodeps --target=i386 --buildroot="$BUILDDIR" -bb $ROOTPATH/tmp.spec
我可以通过使用 --ignoreos 安装来强制安装,但如果有办法避免它。我一直在 Cygwin 中翻阅 rpm 宏文件,但未能找到正确的设置。有任何想法吗?
答案1
在我发布问题后 5 秒,我找到了答案。 rpmbuild命令不正确;如果我执行
rpmbuild --nodeps --target=i386-linux --buildroot="$BUILDDIR" -bb $ROOTPATH/tmp.spec
一切正常,我可以在 Linux 上安装生成的 RPM。