编程语言
首页 > 编程语言> > Python轮子名称中’cp3xm’和’cp2xm’的含义是什么?

Python轮子名称中’cp3xm’和’cp2xm’的含义是什么?

作者:互联网

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

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.12.2的numpy.
Reference

目前我注意到Unofficial Windows Binaries for Python Extension Packages中Python包的命名使用’cpxxm’来替换’none’.例如,

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

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

那么,’cp2xm”cp3xm’的含义是什么?为什么突然所有的包都用’cpxxm’替换’none’?

解决方法:

PEP 3149开始,m表示pymalloc正在用作内存分配器

轮名的第二个组成部分是“abi​​”组件.由于尚未实施abi检测,因此旧版本的轮< 26产生的车轮中始终没有这种情况. 在较新版本的车轮中,abi已经填充.你需要一个足够新版本的pip来安装这些轮子.

标签:python,pip,python-wheel
来源: https://codeday.me/bug/20190701/1352140.html