"Python wheel"的名称中的"cp3xm"和"cp2xm"是什么意思? [英] What is the meaning of 'cp3xm' and 'cp2xm' in the name of Python wheels?

查看:173
本文介绍了"Python wheel"的名称中的"cp3xm"和"cp2xm"是什么意思?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

据我所知,python wheel的命名规则是

To my knowledge, the naming rules of python wheel is

package_version-related_python_version-none-32bits_or_64bits.whl

例如,

numpy‑1.11.2+mkl‑cp35‑none‑win_amd64.whl

是在Windows 64位平台上运行的Python3.5的1.11.2版本的numpy. 参考

is numpy of version 1.11.2 for Python3.5 running in windows 64 bits platform. Reference

当前,我注意到 Python的非官方Windows二进制文件中的Python软件包命名扩展程序包使用'cpxxm'代替'none'.例如,

Currently i have noticed the naming of Python packages in Unofficial Windows Binaries for Python Extension Packages use 'cpxxm' to replace 'none'. For example,

numpy‑1.11.2+mkl‑cp35‑cp35m‑win_amd64.whl

在安装这些软件包时,pip将返回版本不匹配错误.当我将"cp35m"更改为无"时,它变为正常.

When installing these packages, pip will return version unmatch error. When i change 'cp35m' to 'none', it becomes normal.

那么,"cp2xm","cp3xm"是什么意思,为什么所有的软件包突然都用"cpxxm"替换了"none"?

So, what is the meaning of 'cp2xm' 'cp3xm' and why suddenly all the package replace 'none' with 'cpxxm'?

推荐答案

来自 PEP 3149 m表示pymalloc被用作内存分配器

From PEP 3149 the m indicates pymalloc is in use as the memory allocator

车轮名称的第二个组成部分是"abi"组成部分.在旧版车轮<26生产的车轮中,这始终是none,因为尚未实施abi检测.

The second component of the wheel name is the "abi" component. This was always none in wheels produced by older versions of wheel <26 as abi detection wasn't yet implemented.

在较新版本的wheel中,将填充abi.您需要一个足够新的pip版本才能安装这些轮子.

In newer versions of wheel, the abi is populated. You need a sufficiently new version of pip in order to install these wheels.

这篇关于"Python wheel"的名称中的"cp3xm"和"cp2xm"是什么意思?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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