Val*_*lva 0 linux centos rpm compile packages
我正在尝试从ganglia安装新版本,它提供了一个tar.gz. 我的程序是解压缩tar.gz文件,进入文件夹,然后 make rpmbuild -ba ganglia.spec,给出一条警告消息,说缺少依赖库,然后我通过 安装它们yum,然后rpmbuild再次给出,这会.rpm在/usr/src/RPM/我在centOS 5中执行此操作时生成一些文件和centOS 6。然后在一些服务器上安装它。
我想知道我所做的是否正确?(我只在互联网上阅读了一些教程)我的一个朋友说这是错误的,.rpm我生成的这个就像compile并且只适用于只有硬件的服务器,对吗?
.rpm从.tar.gz文件构建包的正确方法是什么?
这是正确的方法。发布 .tar.gz 的人有责任拥有正确的 rpm 规范文件,如果它是作为 rpm 构建的。这就是您从规范文件构建 rpm 的方式。
您以这种方式生成的 rpm 文件可以安装在所有匹配的服务器上,前提是您没有故意做阻止它们工作的事情(例如安装奇怪版本的“依赖项”,但如果您只安装了来自 centos 基础存储库的软件包) ,包装会很好)。但这里的“匹配”意味着 centos/rhel 版本和架构。架构通常指的只是32位或64位x86,但也有arm、powerpc等架构。例如,Fedora 项目支持这些架构:https : //fedoraproject.org/wiki/Architectures。
无论如何,某些 rpm(特定于架构)可以安装在某个架构上,因为它们包含编译代码。其他 rpm 可以是“noarch”,这意味着生成的 rpm 可以安装在任何架构上。这种 rpm 中没有编译的二进制文件,只有数据或解释型语言程序(shell、perl、python 等)。
| 归档时间: |
|
| 查看次数: |
679 次 |
| 最近记录: |