[英]Installing GDAL Python binding in Ubuntu to use as standalone module
我正在嘗試使用Blender Python API(基於Python 3)導出帶有Blender的GeoTiff,因此我決定在Ubuntu(14.04)上安裝GDAL。 我想要獲得的模塊是一個獨立的文件夾,可以將其放在Blender的modules目錄中(/home/user/.config/blender/2.73/scripts/modules)。
問題是我在嘗試安裝GDAL時遇到了幾個不同的問題。 我嘗試從以下位置從源代碼安裝(對於GDAL 2.0.0): 官方PyPi Gdal
sudo apt-get install libgdal-dev gdal-bin
(我在這里列出它是因為它可能很重要) python setup.py build & python setup.py install
,該庫將安裝到/usr/local/lib/python2.7/dist-packages/osgeo
。 但是,當我從命令行運行python
時, from osgeo import osr
運行from osgeo import osr
返回ImportError: No module named _gdal
pip install GDAL
)來安裝該庫,並且它轉到的文件夾是/usr/lib/python3/dist-packages/osgeo
(使用pip show ...
)。 同樣,運行python3
並嘗試導入會導致相同的錯誤。 當然,當我復制粘貼Blender模塊目錄中的每個文件夾時,在Blender Python控制台中也會遇到相同的錯誤。 ./configure --with-python & make & make install
來編譯源代碼。 然后,我將文件夾GDAL-xxx/build/lib.linux-x86_64-3.4/osgeo
到了Blender模塊目錄中,這次是導入時的錯誤: 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文件夾中,不記得我從哪里下載了),運行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
找到該文件夾/usr/local/lib/python3.4/dist-packages/GDAL-1.11.0-py3.4-linux-x86_64.egg/osgeo
。 當我將這個osgeo文件夾放在Blender modules目錄中時,我能夠在Blender中導入osgeo。 如果有任何問題,我將報告。
我想我已經列出了我在Ubuntu上安裝GDAL的所有嘗試。 誰能指出我正確的方向? 您是否認為甚至可以將其安裝為獨立模塊,還是需要通過LD_LIBRARY_PATH鏈接的庫?
這是我找到的解決方案:
從ftp://ftp.remotesensing.org/gdal/2.0.0/或http://download.osgeo.org/gdal/2.0.0/下載undal的Gdal來源(v2.0.0是當前的穩定版本)
轉到目錄gdal2.0.0 / swig / python
運行python3 setup.py build和python3 setup.py install
最后在Ubuntu上的以下位置找到模塊文件夾:/usr/local/lib/python3.4/dist-packages/GDAL-2.0.0-py3.4-linux-x86_64.egg/osgeo
我現在可以在Blender中使用它(在modules目錄中復制)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.