gpt4 book ai didi

python - 如何使用 setuptools 为 linux 创建 rpm 包

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:18:27 25 4
gpt4 key购买 nike

我想为我的软件构建一个 rpm 包。我只熟悉将 linux 的 rpmbuild 工具与 spec 文件和源目录一起使用的经典方法。但我读了 distutils 的文档它可以以某种方式创建 RPM 包。 Setuptools 基于 distutils 所以我猜它也有一些构建 rpm 的过程。虽然我从未实际使用过这两个模块中的任何一个,但我一直认为它们构建了自己的独立包。

我有两个问题。首先是从 setuptools 创建 rpm 的确切过程是什么。其次,这种方式是否比 rpmbuild 实用程序更有条理?

到目前为止我在 Internet 上研究了什么-

  1. Setuptools 主要用于创建“wheel”包。和rpm、deb等其他包类似,只是linux不会像rpm那样直接理解。
  2. 需要在构建过程中传递 bdist_rpm 标志以创建 rpm 包。( link )

我对构建和分发包的概念很困惑。需要一些关于我对 setuptools 和 rpm 之间理解错误的解释。

最佳答案

如何使用 bdist 直接从 setup.py 构建 RPM 包 http://jeromebelleman.gitlab.io/posts/devops/setuppy/请注意,此方法很简单,可以生成简单的 RPM 包。例如,您不能将要求(或构建要求)放在元数据中,您必须始终记住将它们放在命令行中。

我会说 bdist 只适合初始工作。如果您想发布和支持它,那么必须创建 SPEC 文件。

再举一个例子——据我所知,您不能使用 bdist 和 setup.py 指定 %post%pre scriptlet。

这是 python SPEC 文件的示例:https://fedoraproject.org/wiki/Packaging:Python#Example_common_spec_file

关于python - 如何使用 setuptools 为 linux 创建 rpm 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47575303/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com