python-2.7 - 如何创建一个安装 python 依赖项的 RPM?
问题描述
我有一个具有烧瓶依赖性的 python 应用程序。
我所需要的只是从这个应用程序中创建一个 RPM,并且使用这个 RPM,我应该能够将依赖项安装到另一台机器上。
我尝试过的事情,
- 创建了一个 setup.py 文件,
setup(
name='sample-package',
version='1.0.0.0',
author="Niranj Rajasekaran",
author_email="nrajasekaran@test.com",
package_dir={'': 'src/py'},
namespace_packages=['main'],
packages=find_packages('src/py/'),
install_requires=['Flask']
)
运行此命令
python setup.py bdist_rpm
有两个 RPM
dist/
,一个是 noarch,另一个是 src我尝试使用这个安装 noarch rpm
yum install {generated-file}.rpm
我可以输入sample-package-1.0.0.0.egg
文件,site-packages
但不能输入烧瓶。
两个问题,
- 我的方法正确吗?
- 如果是这样,我错过了什么?
解决方案
bdist_rpm
缺乏很多功能,而且 IMO 维护得不是很好。例如pyp2rpm
对于转换现有的 PyPI 模块要好得多。但是您的模块似乎不在 PyPI 上,因此您需要bdist_rpm
手动指定它,因为它无法从setup.py
.
跑:
python setup.py bdist_rpm --requires python-flask
这将生成一个需要该python-flask
软件包的 rpm 文件。对于最近的 RHEL/Fedora,它将是python3-flask
.
推荐阅读
- c - ptrace - 检索使用“调用”指令调用的函数的(符号)名称
- selenium - 我想在使用 Selenium、python 的网页中找到超过“+1.00%”的值后执行 button.click() 操作
- vhdl - 多触发器设备
- android - Android:Firebase 手机号码验证:reCAPTCHA 问题
- html - 如何防止 TD 中的文字与角落的小 logo 重叠
- ios - 无法读取数据,因为使用 openweathermap api 的格式不正确
- django - Django注释一个相关对象,该对象是几个深度相关的对象
- android - 使用 Presentation 类在辅助屏幕上显示多个片段
- php - Laravel Datatables:如何使用第二个数据对列进行排序
- laravel - 如何在 Laravel 的同一张表中关联?