首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >安装python轮文件,“*.whl”导致“.不是这个平台上的支撑轮“

安装python轮文件,“*.whl”导致“.不是这个平台上的支撑轮“
EN

Stack Overflow用户
提问于 2015-07-25 14:32:29
回答 2查看 9.8K关注 0票数 2

我在MacOSX10.9.5上使用Python2.7.10运行Anaconda。我在试着安装一个叫做"Fiona“的软件包。

I输入:

代码语言:javascript
复制
sudo pip install Fiona-1.6.0-cp27-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.ma‌​cosx_10_10_intel.macosx_10_10_x86_64.whl 

结果

代码语言:javascript
复制
The directory '/Users/ronaldbjork/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. Fiona-1.6.0-cp27-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.mac‌​osx_10_10_intel.macosx_10_10_x86_64.whl **is not a supported wheel on this platform.**

建议使用-H:

所以我输入了:

代码语言:javascript
复制
sudo -H pip install Fiona-1.6.0-cp27-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.ma‌​cosx_10_10_intel.macosx_10_10_x86_64.whl 

结果

代码语言:javascript
复制
Fiona-1.6.0-cp27-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.mac‌​osx_10_10_intel.macosx_10_10_x86_64.whl **is not a supported wheel on this platform**
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-25 14:51:04

Python是一种分发二进制包的方法。

它的工作原理是项目的维护者在每个受支持的平台(例如Windows、Mac、linux等)上编译项目(通常带有C扩展等等),然后直接随编译的二进制代码传递包。

优点是,当安装软件包时,只要在同一个平台上编译车轮,所有安装所需做的就是只需解压一个tar文件,然后就可以安装软件包。很酷。这尤其对使用大量C代码(如numpy )的相当大的包产生了戏剧性的影响。

代码语言:javascript
复制
(test) ❯❯❯ time pip install numpy
Collecting numpy
  Using cached numpy-1.9.2-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Installing collected packages: numpy
Successfully installed numpy-1.9.2
        2.50 real         1.37 user         0.38 sys

如您所见,numpy安装在2.5秒内!如果你从源头安装它,这是相当疯狂和令人敬畏的!

不管怎样,回到你的问题上。因此,您获得... is not a supported wheel on this platform的原因是,您正在安装的包不是在安装它的同一个平台上编译的,因此您不能从轮子上安装,需要从源代码中安装,这将在安装时编译代码。

只要你有一个最近的点子,你就可以简单地做:

代码语言:javascript
复制
pip install Fiona==1.6.0

如果可以的话,它将使用车轮,如果不能使用车轮,则从源安装。

票数 5
EN

Stack Overflow用户

发布于 2015-07-25 16:00:50

为什么要费心处理这个方向盘。您说您有python的Anaconda发行版,快速查看包括的包就可以看出Fiona已经在那里了。你可以简单地:

代码语言:javascript
复制
conda install fiona

这允许conda安装程序管理所有二进制依赖项。同时也使升级变得更容易。您还可以看到更完整的conda search fiona版本列表,或者查看anaconda.org上可用的包(以前称为binstar.org)。

编辑:我从上面的评论中看到,这与GeoPandas的兼容性问题有关。虽然不是Anaconda的一部分,但是快速搜索显示了一些贡献的anaconda.org上的包,包括来自IOOS贡献的这一个

代码语言:javascript
复制
conda install -c https://conda.anaconda.org/ioos geopandas

的底线:一旦安装了Anaconda,我会说总是在尝试pip之前先尝试conda install和搜索anaconda.org。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31627515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档