Python pygdal版本错误配置

Python pygdal版本错误配置,python,pip,gdal,geodjango,Python,Pip,Gdal,Geodjango,我试图使用pip安装pygdal,但我发现版本不匹配(2.2.1 vs 2.2.0)。我认为python的版本不正确。我安装了gdal,但它给了我版本1.11,所以我从osgeo4mac安装了gdal2,它给了我最新版本2.2.1,但它与v2.2.0不匹配 pip list | grep GDAL GDAL (2.2.1) $ gdal-config --version 2.2.1 $ pip install pygdal Collecting pygdal Using cached p

我试图使用pip安装pygdal,但我发现版本不匹配(2.2.1 vs 2.2.0)。我认为python的版本不正确。我安装了gdal,但它给了我版本1.11,所以我从osgeo4mac安装了gdal2,它给了我最新版本2.2.1,但它与v2.2.0不匹配

pip list | grep GDAL
GDAL (2.2.1)

$ gdal-config --version
2.2.1

$ pip install pygdal
Collecting pygdal
  Using cached pygdal-2.2.0.3.tar.gz
Requirement already satisfied: numpy>=1.0.0 in /usr/local/lib/python3.6/site-packages (from pygdal)
Building wheels for collected packages: pygdal
  Running setup.py bdist_wheel for pygdal ... error
  Complete output from command /usr/local/opt/python3/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/private/var/folders/rc/jqv1jd_s4b73mtzpsgyj7y6w0000gp/T/pip-build-fz5kkddd/pygdal/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /var/folders/rc/jqv1jd_s4b73mtzpsgyj7y6w0000gp/T/tmp0j5fgt_7pip-wheel- --python-tag cp36:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.12-x86_64-3.6
  creating build/lib.macosx-10.12-x86_64-3.6/osgeo
  copying osgeo/__init__.py -> build/lib.macosx-10.12-x86_64-3.6/osgeo
  copying osgeo/gdal.py -> build/lib.macosx-10.12-x86_64-3.6/osgeo
  copying osgeo/gdal_array.py -> build/lib.macosx-10.12-x86_64-3.6/osgeo
  copying osgeo/gdalconst.py -> build/lib.macosx-10.12-x86_64-3.6/osgeo
  copying osgeo/gdalnumeric.py -> build/lib.macosx-10.12-x86_64-3.6/osgeo
  copying osgeo/gnm.py -> build/lib.macosx-10.12-x86_64-3.6/osgeo
  copying osgeo/ogr.py -> build/lib.macosx-10.12-x86_64-3.6/osgeo
  copying osgeo/osr.py -> build/lib.macosx-10.12-x86_64-3.6/osgeo
  running build_ext
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/private/var/folders/rc/jqv1jd_s4b73mtzpsgyj7y6w0000gp/T/pip-build-fz5kkddd/pygdal/setup.py", line 173, in <module>
      cmdclass=dict(build_ext=gdal_ext),
    File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/usr/local/lib/python3.6/site-packages/wheel/bdist_wheel.py", line 179, in run
      self.run_command('build')
    File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/private/var/folders/rc/jqv1jd_s4b73mtzpsgyj7y6w0000gp/T/pip-build-fz5kkddd/pygdal/setup.py", line 41, in run
      inst_gdal_version, GDAL_VERSION))
  __main__.GDALConfigError: Version mismatch 2.2.1 != 2.2.0
pip列表| grep GDAL
GDAL(2.2.1)
$gdal配置--版本
2.2.1
$pip安装pygdal
收集pygdal
使用缓存的pygdal-2.2.0.3.tar.gz
已满足要求:numpy>=1.0.0 in/usr/local/lib/python3.6/site-packages(来自pygdal)
为收集的包构建控制盘:pygdal
正在运行pygdal的setup.py bdist\u控制盘。。。错误
从命令/usr/local/opt/python3/bin/python3.6-u-c“import setuptools,tokenize;uu file_uu='/private/var/folders/rc/jqv1jd_s4b73mtzpsgyj7y6w0000gp/T/pip-build-fz5kkddd/pygdal/setup.py';f=getattr(tokenize,'open',',打开)(uu文件);code=f.read().replace('\r\n');f.close,'execu文件),'exec')”bdist_wheel-d/var/folders/rc/jqv1jd_s4b73mtzpsgyj7y6w0000gp/T/tmp0j5fgt_7pip-wheel---python标记cp36:
运转的车轮
运行构建
运行build\u py
创建构建
创建build/lib.macosx-10.12-x86_64-3.6
创建build/lib.macosx-10.12-x86_64-3.6/osgeo
正在复制osgeo/uuuu init_uuuuuu.py->build/lib.macosx-10.12-x86_64-3.6/osgeo
复制osgeo/gdal.py->build/lib.macosx-10.12-x86_64-3.6/osgeo
正在复制osgeo/gdal_array.py->build/lib.macosx-10.12-x86_64-3.6/osgeo
正在复制osgeo/gdalconst.py->build/lib.macosx-10.12-x86_64-3.6/osgeo
复制osgeo/gdalnumeric.py->build/lib.macosx-10.12-x86_64-3.6/osgeo
复制osgeo/gnm.py->build/lib.macosx-10.12-x86_64-3.6/osgeo
复制osgeo/ogr.py->build/lib.macosx-10.12-x86_64-3.6/osgeo
复制osgeo/osr.py->build/lib.macosx-10.12-x86_64-3.6/osgeo
运行build_ext
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/private/var/folders/rc/jqv1jd_s4b73mtzpsgyj7y6w0000gp/T/pip-build-fz5kkddd/pygdal/setup.py”,第173行,在
cmdclass=dict(build\u ext=gdal\u ext),
文件“/usr/local/ceral/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/core.py”,第148行,在安装程序中
dist.run_命令()
文件“/usr/local/ceral/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py”,第955行,在run_命令中
self.run_命令(cmd)
文件“/usr/local/ceral/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py”,第974行,在run_命令中
cmd_obj.run()
文件“/usr/local/lib/python3.6/site packages/wheel/bdist_wheel.py”,第179行,运行中
self.run_命令('build'))
文件“/usr/local/ceral/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/cmd.py”,第313行,在run_命令中
self.distribution.run_命令(command)
文件“/usr/local/ceral/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py”,第974行,在run_命令中
cmd_obj.run()
文件“/usr/local/ceral/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/command/build.py”,第135行,正在运行
self.run_命令(cmd_名称)
文件“/usr/local/ceral/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/cmd.py”,第313行,在run_命令中
self.distribution.run_命令(command)
文件“/usr/local/ceral/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py”,第974行,在run_命令中
cmd_obj.run()
文件“/private/var/folders/rc/jqv1jd_s4b73mtzpsgyj7y6w0000gp/T/pip-build-fz5kkddd/pygdal/setup.py”,第41行,运行中
仪表(gdal_版本,gdal_版本)
__main_uuuu.GDALConfigError:版本不匹配2.2.1!=2.2.0

pygdal似乎还不支持gdal 2.2.1。显示:

目前只支持一小部分GDAL版本。此时它们是:1.8.1、1.9.2、1.10.0、1.10.1、1.11.0、1.11.1、1.11.2、1.11.3、1.11.4、2.1.0、2.1.1、2.1.2、2.1.3和2.2.0


您可以安装较旧的GDAL(请参阅),也可以使用不带pygdal的GDAL(自制的gdal2 python公式)。

根据您的GDAL版本安装pydal 如果
gdal配置--version
为您提供
2.2.1
然后

pip install pygdal==2.2.1.3
(如果您不想更新GDAL)

如果您不关注某个版本:

gdal_version=$(gdal-config --version); echo $gdal_version
pip install pygdal>=${gdal_version}.0,<=${gdal_version}.999
## # for zsh
#pip install pygdal">=${gdal_version}.0,<=${gdal_version}.999"
gdal\u version=$(gdal-config--version);echo$gdal_版本

pip install pygdal>=${gdal_version}.0,在黑暗中拍摄-尝试将gdal降级到2.2.0:
pip install-U gdal==2.2.0
。没有骰子。我认为python2和python3给我带来了问题。pygdal2.2.1已经登陆到pypi。