具有发行版特定需求的Python包
我想为python创建一个rpm包,其中包含Linux发行版的特定需求。具体地说,我想构建一个rpm,它可以跨AmazonLinux、CentOS 7.x和RHEL7.x(可能是最后两个版本的6.x)工作。我目前正在使用setuptools构建一个包 问题是一些包要求在不同的发行版中没有相同的名称。现在,我有一个具有发行版特定需求的Python包,python,linux,setuptools,python-packaging,Python,Linux,Setuptools,Python Packaging,我想为python创建一个rpm包,其中包含Linux发行版的特定需求。具体地说,我想构建一个rpm,它可以跨AmazonLinux、CentOS 7.x和RHEL7.x(可能是最后两个版本的6.x)工作。我目前正在使用setuptools构建一个包 问题是一些包要求在不同的发行版中没有相同的名称。现在,我有一个setup.cfg文件,其中包含一个bdist\u rpm部分,如下所示,其中第一行与Amazon Linux相关,而第二行则与RHEL 7.x相关 [bdist_rpm] requir
setup.cfg
文件,其中包含一个bdist\u rpm
部分,如下所示,其中第一行与Amazon Linux相关,而第二行则与RHEL 7.x相关
[bdist_rpm]
requires = python27-boto, python27-boto3, python27-pycurl, python27-pytz, python27-PyYAML # Works on Amazon Linux
# requires = python2-boto, python2-boto3, python-pycurl, pytz, PyYAML, python-daemon # Works on RHEL 7.x
我知道我可以先创建一个.spec文件(使用
bdist\u rpm--spec only
选项),然后使用dist标记,如下所示:。但是有没有一种方法可以让我直接使用setuptools来实现这一点?我可以在setup.cfg文件或MANIFEST.in文件中指定特定于发行版的要求吗?您看到可以在setuptools中使用的设置了吗?哦,快照。我坐在那个页面上,在上面搜索“setup.cfg”,而不是“platform”。我会试试这个,然后回来汇报。但是我确实想指出,我在组合bdist_rpm
和在setup.py
文件中指定依赖项时遇到了问题。包有时不注册依赖项。这就是我首先使用setup.cfg
文件的原因。你看到setuptools中可以使用的设置了吗?哦,快看。我坐在那个页面上,在上面搜索“setup.cfg”,而不是“platform”。我会试试这个,然后回来汇报。但是我确实想指出,我在组合bdist_rpm
和在setup.py
文件中指定依赖项时遇到了问题。包有时不注册依赖项。这就是我首先使用setup.cfg
文件的原因。