2012-10-30 11 views
11

Podczas próby zainstalowania Shapely na komputerze z 64-bitowym Windows, nie mogę uruchomić biblioteki GEOS.Python, GEOS i Shapely na Windows 64

Do tej pory uruchomiłem instalator OSGeo4W, z którego zainstalowałem GDAL (uważam, że biblioteka geos jest zawarta w tym pakiecie). Następnie sprawdziłem i mam plik geos_c.dll na moim katalogu C:\OSGeo4W\bin, ale albo pominięto niektóre etapy konfiguracji, albo biblioteka nie działa.

Potrzebuję Shapely do pracy, więc po zainstalowaniu GDALa również uruchomiłem pip install shapely i najwyraźniej działało (chociaż nie mogło znaleźć biblioteki C dla GEOS).

W moim kodzie mogę importować Shapely, ale kiedy próbuję go użyć, pojawia się błąd informujący, że nie znaleziono "geos.dll".

Każda pomoc z tym będzie bardzo doceniana. Dzięki!

+0

Jakiej wersji systemu Windows używasz? – RickyA

+0

Windows 7, 64-bitowy. –

+0

Może mógłbyś użyć instalatora na dole strony [to] (http://pypi.python.org/pypi/Shapely/1.2b6). To powinno obejmować geos. – RickyA

Odpowiedz

8

Christoph GOHLKE utrzymuje doskonałą basen nieoficjalnych Windows, oprogramowanie dla Pythona

  • Shapely dla 32- i 64-bitowe wersje Pythona, który zawiera GEOS zależności

Innym popularnym źródłem w przypadku wstępnie skompilowanych pakietów jest to Anaconda, ale może być konieczne znalezienie kanału obsługującego Shapely for win-64.

+5

Upewnij się, że zainstalowałeś wersję pasującą do instalacji Pythona, a NIE OS. Popełniłem błąd instalacji 64-bitowej, ponieważ używam 64-bitowego systemu Windows, ale mój Python jest 32-bitowy i dało mi podobny "geos_c.dll" nie został znaleziony. –

3

Istnieje wersja Shapely dostępna here, która zawiera geos w instalatorze. Spójrz na dół strony.

+0

Ta wersja pochodzi z 2010-04-13 i została skompilowana dla 32-bitowych Python 2.4, 2.5 i 2.6. –

+1

można znaleźć nowsze wersje, modyfikując numer wersji w adresie URL. Na przykład. [wersja 1.3.0] (https://pypi.python.org/pypi/Shapely/1.3.0) pochodzi z 2014 r. i działa z pythonem 2.7 i 3.3 –

Powiązane problemy