Python 패키지에 대한 종속성으로 GDAL을 추가 하시겠습니까?


9

PyPI에 GDAL을 사용하는 Python 스크립트를 패키지하려고합니다. 나는 내 직접 참조를 포함하여 시작했다 setup.py:

install_requires=['GDAL==1.11.2'],

이 방법으로 패키지를 테스트 가상 환경에 설치하지 못했습니다.

extensions/gdal_wrap.cpp:2855:22: fatal error: cpl_port.h: No such file or directory
 #include "cpl_port.h"
                      ^
compilation terminated.
error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

그런 다음 pygdalvirtualenv 친화적 버전으로 표시되어 있기 때문에에 대한 참조로 시도했습니다 .

install_requires=['pygdal'],

이렇게하면 오류없이 설치가 완료됩니다 (그러나 일반적인 컴파일 경고로드와 함께). 그러나 스크립트를 호출하면이 오류가 다시 발생합니다.

Traceback (most recent call last):
  File "/home/desouslu/.virtualenvs/test_p3/bin/hasc2gml", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/home/desouslu/.virtualenvs/test_p3/lib/python3.4/site-packages/pkg_resources.py", line 2716, in <module>
    working_set.require(__requires__)
  File "/home/desouslu/.virtualenvs/test_p3/lib/python3.4/site-packages/pkg_resources.py", line 685, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/home/desouslu/.virtualenvs/test_p3/lib/python3.4/site-packages/pkg_resources.py", line 588, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: pygdal

GDAL을 종속성으로 설정하는 올바른 방법은 무엇입니까?

업데이트 : 종속성이 올바르게 선언 된 것으로 보이며 GDAL 패키지 자체에서 문제가 업스트림 될 수 있습니다. StackOverflow에 대한 자세한 내용 .


5
나는 gdal에 대한 순수한 파이썬 질문이 여기서 유효하다고 주장합니다.
John Powell

2
리뷰어들이 어떻게 엄격하게 파이썬 질문을 확신 하는가에 대한 흥미가 있지만 지금까지 그것이 무엇인지 지적하지 않았습니다.
Luís de Sousa

6
그것은 파이썬과 GDAL 질문이며 주제에 대해 생각합니다
Ian Turton

3
이것은 cross-posted되었습니다 : stackoverflow.com/questions/36471683/…
Evil Genius

1
@EvilGenius 나는 일반적으로 교차 게시를 하향 투표하지만이 경우 여기서 질문에 대한 원래의 투표가 진행 방법임을 나타 내기 때문에 그것을 무시할 수 있습니다.
PolyGeo

답변:


3

GDAL Python 바인딩을 설치하기 전에 시스템에 GDAL을 설치해야합니다.

apt-get install -y libgdal-dev

그런 다음 변수를 설정하고 바인딩을 설치하십시오.

CPLUS_INCLUDE_PATH=/usr/include/gdal \
C_INCLUDE_PATH=/usr/include/gdal \
pip install GDAL

시스템 GDAL의 버전은 버전 바인딩보다 높아야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.