【问题标题】:How to create a RPM which install python dependencies?如何创建一个安装 python 依赖项的 RPM?
【发布时间】:2020-04-10 19:43:23
【问题描述】:

我有一个具有烧瓶依赖性的 python 应用程序。

我所需要的只是从这个应用程序中创建一个 RPM,并且通过这个 RPM,我应该能够将依赖项安装到另一台机器上。

我尝试过的东西,

  1. 创建了 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']
)
  1. 运行这个命令

    python setup.py bdist_rpm

  2. dist/ 中有两个 RPM,一个是 noarch,另一个是 src

  3. 我尝试使用这个来安装 noarch rpm

    yum install {generated-file}.rpm

我可以在site-packages 中获取sample-package-1.0.0.0.egg 文件,但不能在烧瓶中获取。

两个问题,

  1. 我的方法正确吗?
  2. 如果是这样,我缺少什么?

【问题讨论】:

    标签: python-2.7 rpm rpmbuild rpm-spec centos5


    【解决方案1】:

    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

    【讨论】:

      猜你喜欢
      • 2019-01-15
      • 2010-10-26
      • 2012-12-02
      • 1970-01-01
      • 2021-05-01
      • 2021-06-30
      • 1970-01-01
      • 1970-01-01
      • 2012-01-26
      相关资源
      最近更新 更多