在Ubuntu中安装GDAL Python绑定以用作独立模块

时间:2015-06-23 08:57:14

标签: python ubuntu python-3.x blender gdal

我正在尝试使用Blender Python API(基于Python 3)使用Blender导出GeoTiff,因此我决定在Ubuntu(14.04)上安装GDAL。我想要的是将模块作为一个独立的文件夹,我可以放在Blender的模块目录中(/home/user/.config/blender/2.73/scripts/modules)。

问题是我在尝试安装GDAL时遇到了几个不同的问题。我尝试从源代码(对于GDAL 2.0.0)安装:Official PyPi Gdal

  • 我跑了sudo apt-get install libgdal-dev gdal-bin(我在这里列出因为它可能很重要)
  • 当我使用python setup.py build & python setup.py install处于解压缩的GDAL文件夹中时,库将安装到/usr/local/lib/python2.7/dist-packages/osgeo。但是,当我从命令行运行python时,运行from osgeo import osr会返回ImportError: No module named _gdal
  • 关注GDAL via pip后,我使用了pip(pip install GDAL)来安装库,它使用的文件夹是/usr/lib/python3/dist-packages/osgeo(使用pip show ...)。再次,运行python3并尝试导入相同错误的结果。当然,当我在blender模块目录中复制粘贴每个文件夹时,我在Blender Python控制台中得到了同样的错误。
  • 所以我决定使用源文件夹中的./configure --with-python & make & make install编译源代码。然后我将文件夹GDAL-x.x.x/build/lib.linux-x86_64-3.4/osgeo复制到blender modules目录,并在导入时得到错误ImportError: /home/yvesu/.config/blender/2.73/scripts/modules/osgeo/_gdal.so: undefined symbol: _Py_ZeroStruct
  • 尝试使用python3 setup.py build使用python3进行编译会返回错误error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

编辑1 : 我想我已经找到了解决方案:我去了目录swig/python(在GDAL-1.11.0文件夹中找不到但gdal-1.11.0 fodler,不记得我从哪里下载了它),跑了python3 setup.py build & python3 setup.py install,最终可以找到/usr/local/lib/python3.4/dist-packages/GDAL-1.11.0-py3.4-linux-x86_64.egg/osgeo中的文件夹。当我把这个osgeo文件夹放在Blender模块目录上时,我能够在Blender中导入osgeo。如果出现任何问题,我会报告。

我想我已经列出了在Ubuntu上安装GDAL的所有尝试。谁能指出我正确的方向?您是否认为甚至可以将其作为独立模块安装,或者我是否需要通过LD_LIBRARY_PATH链接库?

1 个答案:

答案 0 :(得分:3)

以下是我发现的解决方案:

我现在可以在Blender中使用它(在模块目录中复制)