เพิ่ม GDAL เป็นการพึ่งพาแพ็คเกจ Python หรือไม่


9

ฉันพยายามจัดทำสคริปต์ Python ที่ใช้ GDAL สำหรับ PyPI ฉันเริ่มต้นด้วยการอ้างอิงโดยตรงใน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

ฉันลองแล้วมีการอ้างอิงถึงpygdalเนื่องจากมีการทำเครื่องหมายเป็นรุ่นที่เป็นมิตร virtualenv:

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
ฉันจะยืนยันว่าคำถาม Python บริสุทธิ์เกี่ยวกับ gdal นั้นถูกต้องที่นี่
John Powell

2
น่าสนใจว่าผู้ตรวจสอบดูเหมือนจะมั่นใจในเรื่องนี้อย่างไรกับคำถาม Python แต่ก็ยังไม่ได้ชี้ให้เห็นว่ามันคืออะไร
Luís de Sousa

6
มันเป็นคำถามไพ ธ อนและ GDAL และฉันคิดว่าในหัวข้อ
เอียน Turton

3
สิ่งนี้ถูกโพสต์ข้ามกัน: stackoverflow.com/questions/36471683/ …
Evil Genius

1
@EvilGenius ปกติแล้วฉันจะลงคะแนนข้ามการโพสต์ แต่ในกรณีนี้ฉันสามารถเอาผิดเพราะการโหวตอย่างใกล้ชิดดั้งเดิมของคำถามที่นี่ระบุว่าเป็นวิธีที่จะดำเนินการต่อไป
PolyGeo

คำตอบ:


3

ก่อนการติดตั้งการผูก python ของ GDAL คุณต้องติดตั้ง 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.