2015-04-24 2 views
2

Мне нужно импортировать модуль osgeo.ogr в virtualenv python program.Нет модуля с именем osgeo.ogr

Global питон имеет этот модуль:

[email protected]:~/$ python 
Python 2.7.8 (default, Oct 20 2014, 15:05:19) 
[GCC 4.9.1] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import osgeo 
>>> 

Но в virtualenv (без --no-сайта-пакеты):

[email protected]:~$ temp/bin/python 
Python 2.7.8 (default, Oct 20 2014, 15:05:19) 
[GCC 4.9.1] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import osgeo 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named osgeo 

В чем причина такого поведения?

+0

См. Http://stackoverflow.com/a/29792831/315168 –

ответ

1

Проблема решается следующим образом:

(VIRTUAL_ENV)[email protected]:~$ pip install --no-install GDAL==1.11.2 

1.11.2, потому что моя версия GDAL является 1.11.2:

(VIRTUAL_ENV)[email protected]:~$ gdal-config --version 
1.11.2 

следующая:

(VIRTUAL_ENV)[email protected]:~$ cd ~/.virtualenvs/VIRTUAL_ENV/build/GDAL/ 
(VIRTUAL_ENV)[email protected]:~/.virtualenvs/VIRTUAL_ENV/build/GDAL$ python setup.py build_ext --include-dirs=/usr/include/gdal/ 
(VIRTUAL_ENV)[email protected]:~/.virtualenvs/bamap/build/GDAL$ pip install --no-download GDAL 

--include-dirs=/usr/include/gdal/ для меня верный. GDAL был установлен с Quantum GIS в моей системе. Если вы будете строить GDAL вручную, могут быть другие. Полная версия:

python setup.py build_ext --gdal-config=/YOUR_PATH/bin/gdal-config --library-dirs=/YOUR_PATH/gdal/VERSION_GDAL/lib --libraries=gdal --include-dirs=/YOUR_PATH/gdal/VERSION_GDAL/include 

Детали могут найти here.

+0

. Можете ли вы обновить опцию 'pip install --no-install', поскольку она больше не существует? Этот ресурс может помочь другим людям, которые застряли: https://gist.github.com/cspanring/5680334 – giosans

0

Мое первое предположение: когда вы установили osgeo, у вас не было разрешения на установку в качестве пакета сайта. Какой каталог он отображается в вашей системе?

Если у вас нет доступа к установке пакета сайта, будет установлен пользовательский/локальный пакет.