Python 使用conda安装gdal并设置环境变量
我一直在尝试在Windows8环境中使用Python2.7和Anaconda来获取gdal库的工作 除了gdal,我还安装了libgdal(坦率地说,我并不真正理解两者之间的区别)。我现在似乎有了GDAL2.1.0和2.0.2以及LIBGDAL2.1.0 但是,当我运行Py代码时,有一个gdal错误: “gdalwarp”未被识别为内部或外部命令, 可操作的程序或批处理文件 我已经将GDAL_数据环境变量设置为指向 C:\Anaconda\pkgs\libgdal-2.1.0-vc9\u 0\Library\share\gdal 我还添加了一条路径,尽管我不完全确定这条路径应该指向哪里: C:\Anaconda\pkgs\libgdal-2.1.0-vc9\u 0\Library\bin 我在GDAL2.0.2上也尝试过同样的方法,但没有成功。gdalwarp.exe似乎确实存在于libgdal 2.1.0和gdal 2.0.2下 有什么想法吗?安装是否有问题,或者我是否没有正确设置环境变量 仅供参考,我尝试过各种安装命令,特别是:Python 使用conda安装gdal并设置环境变量,python,conda,gdal,Python,Conda,Gdal,我一直在尝试在Windows8环境中使用Python2.7和Anaconda来获取gdal库的工作 除了gdal,我还安装了libgdal(坦率地说,我并不真正理解两者之间的区别)。我现在似乎有了GDAL2.1.0和2.0.2以及LIBGDAL2.1.0 但是,当我运行Py代码时,有一个gdal错误: “gdalwarp”未被识别为内部或外部命令, 可操作的程序或批处理文件 我已经将GDAL_数据环境变量设置为指向 C:\Anaconda\pkgs\libgdal-2.1.0-vc9\u 0\L
conda install gdal
conda install -c conda-forge gdal
conda install -c anaconda gdal
附录:我找到了一个手动解决方案:在运行代码之前,我在终端中设置了GDAL_数据和路径变量(指向libgdal 2.1.0)
但是,当我运行Py代码时仍然存在一个问题:它应该使用gdal_polygonize将tiff文件转换为shp:
cmd = 'gdal_polygonize.py %s -f "ESRI Shapefile" %s'%(dst_tif, dst_shp)
没有错误,但没有创建shapefile(这会导致代码中稍后出现错误)。关于gdal为什么仍然不能正常工作有什么想法吗
我已尝试将env变量指向osgeo:
set PATH=%PATH%;C:\Anaconda2\Lib\site-packages\osgeo\scripts
set GDAL_DATA=C:\Anaconda2\Lib\site-packages\osgeo\data\gdal
Gdalinfo可以工作,但Py代码中使用的gdal_多边形化似乎不起作用 关键是激活环境时(可能)执行的激活脚本。并不是每个Conda的GDAL构建都包含这个。根据我的经验,最近的Conda Forge构建非常好 根据py27和GDAL 2.1的要求,我可以通过以下步骤使其工作: 1) 创建新环境:
conda Create-n gdaltest python=2.7
2) 激活:Activate gdaltest
3) 安装GDAL:conda安装GDAL=2.1-c conda forge
4) 重新激活环境:停用
+激活gdaltest
这将强制执行刚安装的激活脚本,这将设置环境变量
如果我启动python并运行os.system(“gdalinfo”)
,我可以看到它被正确地拾取。运行os.environ['GDAL\u DATA']
确认路径设置正确
您可以在以下位置查看(取消)激活脚本:
C:\Miniconda3\envs\\etc\conda\activate.d\gdal activate.bat
几年前,这并没有像今天这样有效,所以请确保您有一个最新的Conda版本(4.3.x)等
这种方法的好处是,在切换环境时,您的路径也会相应地改变。如果混合和匹配不同的GDAL版本,“硬编码”的GDAL_数据路径可能会导致一些兼容性问题(尽管正常情况下应该可以正常工作)