Cài đặt GDAL trong Python trên Windows 7?


9

Tôi đang gặp sự cố khi cài đặt thư viện gdal cho python. Tôi sử dụng Windows 7 và có WinPython 2.7.9.2 chạy Python 2.7.9. Tôi muốn sử dụng gdal + Python để thao tác raster.

Tôi đã đọc rằng PIP là cách ưa thích để cài đặt các gói trên windows và nó được đóng gói với Python 2.7.9. Tôi đã chỉnh sửa biến môi trường PATH của mình để bao gồm pip và python:

;c:\~\WinPython-32bit-2.7.9.2\python-2.7.9\Scripts\;c:\~WinPython-32bit-2.7.9.2\python-2.7.9\

vì vậy bây giờ tôi có thể chạy cả python và pip trực tiếp từ dấu nhắc lệnh.

Lỗi xuất hiện khi tôi gõ

c:\>pip install gdal

cung cấp cho:

C:\~\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
extensions/gdal_wrap.cpp(2855) : fatal error C1083: Cannot open include file: 'cpl_port.h': No such file or directory
error: command 'C:\\~\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2

Vì vậy, rõ ràng một cái gì đó gọi là 'cpl_port.h' bị thiếu. Điều này cũng được mô tả trong câu hỏi này khi đề xuất rằng các tệp tiêu đề không thể được tìm thấy. Tuy nhiên, giải pháp được cung cấp trong luồng đó là dựa trên LINUX và không tương thích với Windows của tôi.

Tôi không chắc chắn làm thế nào để tiếp tục từ đây vì vậy tôi có nên từ bỏ PIP và thử một tuyến đường khác không?

Tôi đã xác minh rằng PIP hoạt động bằng cách cài đặt một số gói khác, vì vậy vấn đề có vẻ là do gdal.


Một quy trình đơn giản là cài đặt Python từ trình cài đặt msi của Windows và các ràng buộc python GDAL + cũng từ các trình cài đặt msi có thể được tải xuống từ gisi INTERNals.com.
dùng49584

Hi, cảm ơn cho bình luận của bạn. Bạn có thể xây dựng một chút? Tôi nghe thấy thuật ngữ 'ràng buộc' rất nhiều, nhưng không hiểu ý của bạn ở đó. Tương tự như vậy, trình cài đặt MSI là gì? Lưu ý rằng tôi đã cài đặt Python và không cài đặt lại nếu tôi có thể tránh được.
Hans Roelofsen

MSI là viết tắt của trình cài đặt Microsoft. Đối với người dùng, đây là tệp kết thúc bằng .msi mà bạn nhấp đúp chuột và sau đó nó bắt đầu cài đặt. Với các ràng buộc, bạn có thể gọi mã GDAL được viết bằng C / C ++ từ các tệp Python.opensuse.org/opensuse/en/e/eb/ . Nếu bạn đã cài đặt Python, bạn có thể sử dụng nó.
dùng49584

Câu trả lời:


4

GDAL thực sự là một tập hợp các mã thông báo được viết bằng C. Vì vậy, nó cần được biên dịch trước khi cài đặt và Windows không đi kèm với trình biên dịch C. Vì vậy, cách dễ nhất của bạn là tải xuống và cài đặt các tệp nhị phân được biên dịch sẵn của thư viện. Nơi dễ nhất để nhận nhị phân là từ Christoph Gholke , người cung cấp một gói thư viện GDAL hoàn chỉnh cũng như các ràng buộc Python.

Cuối cùng, nếu bạn đang tìm cách chơi với sửa đổi trình quét trong Python, tôi khuyên bạn nên cài đặt rasterio(nhị phân có sẵn từ Gholke ), đây là một trình bao bọc đẹp hơn xung quanh GDAL và có thể dễ sử dụng hơn rất nhiều.


Xin chào, cảm ơn vì đã dành thời gian trả lời. Tôi sẽ xem xét câu trả lời của bạn vào ngày mai, nó sẽ bị trễ ở đây. Chúc mừng!
Hans Roelofsen

Làm thế nào để cài đặt gdal biết nơi tôi đã cài đặt nhị phân?
Školstvo

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.