Windows系统下Cartopy及其依赖安装问题求助
在Windows上安装Cartopy的完整方案
我明白在Windows上用pip装Cartopy时碰到依赖问题有多头疼——GEOS和Proj4的手动安装确实容易卡壳。下面给你两种方案,优先推荐简便的conda安装法,也会详细讲手动编译依赖的步骤。
一、最简便的安装方式(强烈推荐)
Windows环境下,用conda(Anaconda/Miniconda的包管理工具)可以自动处理所有依赖,完全不用手动折腾GEOS和Proj4:
- 如果你还没装Anaconda或Miniconda,先下载对应Windows版本的安装包并完成安装(选默认配置就行)。
- 打开Anaconda Prompt(开始菜单里找得到):
- (可选但推荐)创建一个独立的虚拟环境,避免和其他项目依赖冲突:
这里的Python版本可以换成你正在用的(比如3.9、3.10,只要Cartopy支持就行)。conda create -n cartopy_env python=3.8 - 激活这个虚拟环境:
conda activate cartopy_env
- (可选但推荐)创建一个独立的虚拟环境,避免和其他项目依赖冲突:
- 安装Cartopy,用conda-forge频道的包(更全更稳定):
等待安装完成后,就可以直接在Python里导入Cartopy用了。conda install -c conda-forge cartopy
二、手动安装依赖+Cartopy的方法(适合想折腾的场景)
如果你坚持要用pip安装,得先手动搞定GEOS和Proj4的编译/安装:
第一步:安装GEOS
你已经下载了GEOS的源码包,但Windows下编译源码需要C++编译环境,推荐用MinGW-w64:
- 安装MinGW-w64:选择合适的版本(比如x86_64),安装时勾选
mingw32-base和mingw32-gcc-g++组件,把MinGW的bin目录(比如C:\MinGW\bin)添加到系统PATH环境变量里。 - 解压
geos-3.6.2.tar.bz2到一个文件夹(比如C:\geos-src),打开Git Bash(或者MinGW的终端,Windows CMD可能不支持部分Unix命令),进入解压后的目录:cd C:\geos-src - 配置安装路径(比如安装到
C:\GEOS):./configure --prefix=C:\GEOS - 编译源码:
这个过程可能需要几分钟,耐心等它完成。make - 安装编译好的GEOS:
完成后,make installC:\GEOS里就有GEOS的文件了,记得把C:\GEOS\bin添加到PATH。
第二步:安装Proj4
和GEOS类似,你可以选择编译源码,或者找Windows预编译的二进制包(后者更简单):
- 如果用预编译包:下载对应版本的Proj4二进制包,解压到比如
C:\Proj4,把C:\Proj4\bin添加到PATH。 - 如果编译源码:步骤和GEOS类似,用MinGW编译后安装。
第三步:用pip安装Cartopy
打开终端(确保MinGW的bin在PATH里),运行以下命令,指定GEOS和Proj4的路径:
pip install cartopy --install-option="--with-geos=C:\GEOS\bin\geos-config" --install-option="--with-proj=C:\Proj4"
注意:如果这里报错,可能是geos-config的路径不对,或者MinGW环境没配置好,这种情况下还是建议回到conda的方法。
内容的提问来源于stack exchange,提问作者A T
相关产品推荐
相关产品推荐

