微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为多个发行版/平台编译和构建Linux包

我的公司有一个用C语言编写的 Linux软件产品,用autotools构建并通过二进制包分发.要创建二进制文件,我们首先生成源RPM,然后从SRPM编译源代码.

目前我们只提供64位Fedora 10的RPM软件包,但是我们想开始为多个Linux发行版提供软件包 – 32位和64位 – 以及每个发行版的不同版本(例如Fedora 11)作为Fedora 10).

我听说为多种Linux风格生成构建的最佳方法是使用单个构建服务器,并为要构建的每个软件包使用不同的chrooted环境.有没有人有一个很好的资源可以更详细地解释这一点,也许有使用这种构建机制的众所周知的项目的例子,或者有更好的替代方案来实现相同的目标?

注意 – 我非常熟悉如何使用checkinstall等工具为不同的发行版生成正确格式的包.我不太熟悉的是如何在同一台机器上多次编译相同的代码,并为每个我要打包的发行版找到正确的二进制文件.

解决方法

我强烈建议您查看openSUSE Build Service.他们拥有在Xen虚拟服务器中设置的各种发行版和体系结构,并且支持各种软件包,包括RPM和DEB格式.它将节省您的时间和麻烦,自己设置每个服务器,更不用说获得所有包含和构建依赖的时间.

http://en.opensuse.org/Build_Service

编辑:作为旁注,如果您有安全问题,可以下载代码并在自己的服务器上设置OBS,而不是使用公共服务器.

原文地址:https://www.jb51.cc/linux/397592.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐