安装与畅达@中并设置环境变量
我一直在试图让使用Python 2.7和蟒蛇的GDAL图书馆工作在Windows 8环境。安装与畅达@中并设置环境变量
除了gdal之外,我还安装了libgdal(坦率地说,我不太了解两者之间的区别)。我现在似乎有gdal 2.1.0和2.0.2以及libgdal 2.1.0。
然而,当我跑我的PY代码,还有一个@中的错误:
'gdalwarp' is not recognized as an internal or external command, operable program or batch file.
我已经设置了GDAL_DATA环境变量指向
C:\Anaconda\pkgs\libgdal-2.1.0-vc9_0\Library\share\gdal
我还增加了一个路径,虽然我不完全确定这应该指向什么地方:
C:\Anaconda\pkgs\libgdal-2.1.0-vc9_0\Library\bin
我试过同样的gdal 2.0.2没有成功。 gdalwarp.exe似乎存在于libgdal 2.1.0和gdal 2.0.2下。
任何想法?安装时是否存在问题,或者我没有正确设置环境变量?
仅供参考,我曾尝试过各种安装命令,特别是:
conda install gdal
conda install -c conda-forge gdal
conda install -c anaconda gdal
附录:我已经发现一个手动解决方案:我设置GDAL_DATA和PATH变量在终端(指向libgdal 2.1.0 )上运行的代码之前...
然而,仍然有运行我的PY代码的问题:它应该转换为TIFF文件与gdal_polygonize到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_polygonize工作。
关键是在激活环境时(可能)执行的激活脚本。并不是康达每个GDAL构建都包含这一点。根据我的经验,最近Conda-Forge的构建非常好。
满足您对py27和GDAL 2的要求。1我可以得到它通过以下步骤工作:
1)创建一个新的环境:conda create -n gdaltest python=2.7
2)激活:activate gdaltest
3)安装GDAL:conda install gdal=2.1 -c conda-forge
4)重新激活环境:deactivate
+ activate gdaltest
这会强制刚刚安装的激活脚本被执行,这会设置环境变量。
如果我启动python并运行os.system("gdalinfo")
,我可以看到它正确拾取。并运行os.environ['GDAL_DATA']
确认路径设置正确。
您可以查看自己的(去)激活脚本: C:\Miniconda3\envs\<env name>\etc\conda\activate.d\gdal-activate.bat
几年前的今天,因为它做到这一点没有工作一样,所以请确保您有最新版本康达(4.3。 x)等
这种方法的好处是,当切换环境时,你的路径也相应地改变。如果您混合并匹配不同的GDAL版本(尽管通常应该可以正常工作),“硬编码”GDAL_DATA
路径可能会导致一些兼容性问题。