如何在 linux-32 上将 Cartopy 安装到 python-3.5

How to install Cartopy to python-3.5 on linux-32

当我尝试通过 conda 安装它时

conda install -c scitools cartopy

收到消息:

Fetching package metadata ......... Solving package specifications: .

PackageNotFoundError: Package not found: '' Package missing in current linux-32 channels: - cartopy

Close matches found; did you mean one of these?

cartopy: astropy

You can search for packages on anaconda.org with

anaconda search -t conda cartopy

当我运行

anaconda search -t conda cartopy

出现新消息

Packages: Name | Version | Package Types | Platforms

 ------------------------- |   ------ | --------------- | ---------------
 CISTools/cartopy          |          | conda           | osx-64         
                                      : A library providing cartographic tools for python
 ChrisBarker/cartopy       |          | conda           | osx-64         

...

 vsheremet/cartopy         |   0.11.2 | conda           | linux-32       

Found 22 packages

当我尝试使用其中之一时 - 例如

conda install -c moghimis cartopy

我收到

Fetching package metadata ......... Solving package specifications: ....

UnsatisfiableError: The following specifications were found to be in conflict: - cartopy - python 3.5* Use "conda info " to see the dependencies for each package.

如何将此软件包安装到我的系统中?

最简单的问题是 anaconda cloud 上没有满足 linux-32py35 组合的 cartopy 构建。有一些 linux-32 构建可用(例如来自 Unidata 和 pelson)和一些 py35 构建(例如来自 IOOS),但是 none 两者都可以。

这是因为...

  • py35 相当新,所以目前反对它的人相对较少,
  • linux-32 现在已经相当老了,所以很少有人仍然为它构建包。

最简单的解决方案是更改您的依赖项之一。例如,如果您可以将 Python 要求更改为 py34,那么您可以使用 Unidata linux-32 构建的 cartopy。请注意,这是一个较旧版本的 cartopy,但是,与最新版本的 v0.14.3 相比,v0.13.0。

如果您想挑战一下,另一种解决方案是为自己构建 cartopy!可以在名为 conda-forge 的 GitHub 组织(位于 https://github.com/conda-forge/cartopy-feedstock). There are some instructions on updating a recipe here: https://conda-forge.github.io/#update_recipe.

中找到配方(最终 cartopy 版本的构建依据)