python之wheel 包命名规则、abi 兼容和安装

一、windows安装python包,遇见的问题

  1、python3以后的版本,安装python包,可以直接使用pip安装,但是安装时偶尔报错

  2、安装python源码包,如何确定自己该安装哪个版本,一看就晕倒~~~(没人扶,/(ㄒoㄒ)/~~)

一、wheel 包的命名规定

wheel 包的命名格式为 {distribution}-{version}(-{build tag})?-{python tag}-{abi tag}-{platform tag}.whl

1、python tag

  • py 无实现特定的拓展

  • cp CPython,也就是通常使用的 CPython 实现,大多数

  • ip IronPython,跑在 Windows CLI 平台上的 Python 实现

  • pp PyPy,带 JIT 的 Python 实现

  • jy Jython,跑在 JVM 上的 Python 实现

2、platform tag就是自己的平台

3、api tag

如果 sysconfig 定义了 SOABI ,那么就用 SOABI 的值。

二、如何判断给定 wheel 包是否能够安装(看了之后就不省人事了~~~)

通常判断依赖的时候,需要看下是否符合最低版本。不过 pip 判断给定 wheel 包的 abi 兼容的做法与此有些许差异。pip 的做法是,计算出一个支持的 abi tag 集合,然后判断目标 abi tag 是否在这个集合里。这个计算过程跟在打包时是一样的。这意味着,打包拓展的 CPython 需要跟安装的机器上的 CPython 版本是一致的,否则就装不了。对于“永远的2.7”来说,这不是什么问题;不过如果用的是 Python 3,又不能控制具体的 CPython 版本,对于 C 拓展还是现场编译安装比较靠谱。

三、说了半天有没有简单方法

from pip import pep425tags
print(pep425tags.get_supported())

《python之wheel 包命名规则、abi 兼容和安装》

这里就查看到自己的python所支持的wheel包:(‘python Tag’,’abi Tag’,’platform tag’)

四、具体使用

查看以后到相应的wheel包,下载安装即可

    原文作者:skiler
    原文地址: http://www.cnblogs.com/skiler/p/6866069.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞