Debian 如何用一个脚本构建.deb.rpm.dmg等
我的问题是: 我有一个程序,希望以二进制格式分发,这样用户就不需要自己编译它了 我已经构建了一个.deb包。但是,正如我所记得的,应该有一些程序,它接受一个配置文件,并以不同的格式生成不同的二进制包,如.deb、.rpm,甚至.dmg、.msi等。这意味着,我只需要告诉它包中应该包含哪个文件(以及如何构建),它就可以为我生成不同的包Debian 如何用一个脚本构建.deb.rpm.dmg等,debian,rpm,Debian,Rpm,我的问题是: 我有一个程序,希望以二进制格式分发,这样用户就不需要自己编译它了 我已经构建了一个.deb包。但是,正如我所记得的,应该有一些程序,它接受一个配置文件,并以不同的格式生成不同的二进制包,如.deb、.rpm,甚至.dmg、.msi等。这意味着,我只需要告诉它包中应该包含哪个文件(以及如何构建),它就可以为我生成不同的包 在谷歌搜索了一些关键词后,我注意到在不知道名称的情况下很难找到这样的程序。(我确实认为应该有类似的东西。事实上,我记得我在某处见过它。)Effing Package
在谷歌搜索了一些关键词后,我注意到在不知道名称的情况下很难找到这样的程序。(我确实认为应该有类似的东西。事实上,我记得我在某处见过它。)Effing Package Management可以同时执行rpm和deb(从 ) 对于您正在谈论的那种跨平台部署,您可以尝试
*注意-我从未使用过这些工具,但我听说过它们我认为你的方法是错误的。作为开发人员,您的工作是开发程序,而不是为所有不同的Linux发行版打包。让我们来处理包装。由于你对他们的包装指南的了解是不存在的,你可能会创建二进制软件包,这些软件包在某些系统上会以惊人的方式失败,更糟糕的是……甚至会破坏用户的系统 但是,您能做的事情是:
- 确保许可证清晰简单(最好是OSI批准的许可证之一)
- 列出您的依赖项,包括版本,不要捆绑它们
- 具有合理的更新策略(即迷你/微型版本更新不会破坏API或引入巨大的更改)
- 使用标准构建系统之一(根据项目的不同,它可以是autotools、setup.py、maven等)
- 理想情况下,不要做奇怪的事情,但要了解一些好的项目是如何做事情的(Apache项目通常有合理的方法)
- 然后联系发行版,尝试获取一些对维护您的程序感兴趣的软件包