美文网首页我爱编程
轮子(whl文件)的鉴定与使用

轮子(whl文件)的鉴定与使用

作者: 幻色尘埃 | 来源:发表于2018-04-12 19:38 被阅读308次

tensorflow_gpu-1.7.0-cp36-cp36m-win_amd64.whl 这长长的文件名是什么意思?

xxx.whl is not a supported wheel on this platform. 同样的操作为什么会报这个?

为什么Pycharm里安装Package时,明明看见了包的名字,点了安装却找不到?


whl文件的文件名并不是随便起的,起初笔者以为也只是某种规范命名而已,就算改成xxx.whl应该都可以,然而不只如此。pip会根据当前平台情况规定这个文件名。

import pip

print(pip.pep425tags.get_supported())

pip支持平台列表

运行结果如上图,会将支持的平台以3个一组的形式列举出来,分别对应文件名最后三个后缀。当文件下载重复时,Windows总会自动添加 (2) 这样的数字,而这一部分也会被归在这个命名判断里,于是发现 win_amd (2) 不存在,便会报出不支持该平台。笔者被此坑了好久。

这一组中前两个的具体含义笔者不清楚,只知道应该是指支持的版本,望大佬告知。

最后一个代表了平台。而有的人64位操作系统支持的是win32,有的人是win_amd64,笔者甚至一个电脑能装出两种。笔者认为这坑的根源一般源自python官网的下载。官网最明显的下载链接笔者直接下出了32位版本,pip在此版本的python中支持win32后缀。而64位版本要在下方的各安装版本列表里面找到。

python官网

虽然这种错误技术性不高,但却很隐蔽,一般包又都支持win32与win_amd64在安装过程中不会发现问题,只有像一些特殊情况才可能发现奇怪之处。

平台标识

也可从上图标注位置查看当前python是64位还是32位。而对于Windows,前面的1900,我们下回再说。


总结一下:

轮子名代表其支持平台,pip安装时会对其进行检测与匹配,有重要意义。

不支持当前平台,可能是你下错轮子了也可能是你装错python了。

Pycharm里有包名却下不下来,因为当前使用的python不支持这个包的任何版本,你需要查清这个包的编译情况及其支持的平台。pip找不到应该有的包时同理。

相关文章

网友评论

    本文标题:轮子(whl文件)的鉴定与使用

    本文链接:https://www.haomeiwen.com/subject/vbsrkttx.html