当setup.py运行在Python第3版解释器上时,我如何构建一个py2轮包? [英] How do I build a py2 wheel package, when setup.py runs with a Python version 3 interpreter?

查看:25
本文介绍了当setup.py运行在Python第3版解释器上时,我如何构建一个py2轮包?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包,它应该只是Python版本2,但需要运行版本3解释器来生成。

此包的setup.py看起来有点像Hits:

from setuptools import setup

setup(
    python_requires="<3.0, >=2.7.5",
    classifiers=[
        'Programming Language :: Python :: 2',
        'Intended Audience :: Developers',
    ],
    # ... more keyword arguments ... 
 )

如果我调用python2 setup.py build bdist_wheel,我会得到:

$ ls dist
mypackage-0.3.dev14-py2-none-any.whl

如果我使用版本3解释器运行它,即python3 setup.py build bdist_wheel,我会得到:

$ ls dist
mypackage-0.3.dev14-py3-none-any.whl

我本以为无论解释器版本如何,我都会得到一个py2包,因为我用python_requires(以及在标记中)指定了它。我的包构建服务器只有一个Python3解释器。

在使用Python3解释器运行setupTools时,如何构建面向Python2的控制盘?这有可能吗?文件名中的-py3-/-py2的含义是否与我认为的不同?

推荐答案

尝试将python-tag参数传递给bdist_车轮:

python setup.py bdist_wheel --python-tag=py2

也可以作为

传递
from setuptools import setup
setup(options={'bdist_wheel':{'python_tag':'py2'}})

setup.cfg

这篇关于当setup.py运行在Python第3版解释器上时,我如何构建一个py2轮包?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆