rtree unter Windows 64 Bit installieren

12

Ich verwende Windows10 64-Bit, mein os.name ist 'nt', ich habe pip zur Installation verwendet, aber es beschwert sich über die räumlicheindex_c.dll

 File "C:\Users\Bachir\AppData\Local\Temp\pip-build-td64lrth\rtree\rtree\core.py", line 101, in <module>
   raise OSError("could not find or load spatialindex_c.dll")
 OSError: could not find or load spatialindex_c.dll

Ich habe rtree-0.8.2 heruntergeladen und dann python setup.py install ausgeführt und habe die gleiche Meldung

PS C:\Users\Bachir\documents\Python Scripts\Rtree-0.8.2> python setup.py install
Traceback (most recent call last):
File "setup.py", line 4, in <module>
import rtree
File "C:\Users\Bachir\documents\Python Scripts\Rtree-0.8.2\rtree\__init__.py", line 1, in <module>
from .index import Rtree
File "C:\Users\Bachir\documents\Python Scripts\Rtree-0.8.2\rtree\index.py", line 6, in <module>
from . import core
File "C:\Users\Bachir\documents\Python Scripts\Rtree-0.8.2\rtree\core.py", line 101, in <module>
raise OSError("could not find or load spatialindex_c.dll")
OSError: could not find or load spatialindex_c.dll
PS C:\Users\Bachir\documents\Python Scripts\Rtree-0.8.2>  

Ich habe die räumlichen Index-DLL-Dateien 'libspatialindex-1.8.1-win-msvc-2010-x64-x32.zip' nicht heruntergeladen. Diese Datei enthält sowohl 32- als auch 64-Bit-Dateien. Entpacken Sie sie und legen Sie sie im Installationsordner ab. Bei der Installation mit python setuo.py wird immer noch über die räumliche Index-DLL-Datei geklagt

bhalitim
quelle

Antworten:

13

Bitte schauen Sie unter Wie kann ich pyproj in arcpy installieren?

1) die RTree muss Modul kompiliert wird mit einer Version von libspatialindex installierte im System ( der Computer) und nicht einfach das Hinzufügen spatialindex dll nach
2) Windows hat keinen Compiler standardmäßig als in Linux oder Mac OS X daher können Sie nicht installieren RTree mit pip oder setup.py install
3) auf der Python Package Index- Seite von RTree wird der unten stehende Download angegeben

Windows-Binärdateien http://www.lfd.uci.edu/~gohlke/pythonlibs/#rtree

Die Dateien sind Rtree-0.8.2-cp27-none-win32.whl und Rtree-0.8.2-cp27-none-win_amd64.whl

Laden Sie die Datei und herunter, um eine whl-Datei zu installieren

pip install Rtree-0.8.2-cp27-none-....whl (32 or 64)
Gen
quelle
Rtree-0.8.2-cp27-none-win32.whl wird auf python34 platfom
bhalitim
Dann müssen Sie Rtree mit einer Version von libspatialindex kompilieren, aber ich kann Ihnen nicht helfen, weil ich Windows
Gen
Ist es möglich, dieses heruntergeladene Rad in Ihr eigenes Paket aufzunehmen und von dort aus von pip installieren zu lassen? Im Moment kann ich rtree nicht als Abhängigkeit angeben ...
Robin De Schepper
3

Ich hatte das gleiche Problem und löste es, indem ich die Datei core.py in Rtree in änderte

C: \ PROGRA ~ 1 \ QGIS2 ~ 1.18 \ apps \ Python27 \ lib \ site-packages \ rtree \ core.py

und änderte diese Zeile:

rt = _load_library('spatialindex_c.dll', ctypes.cdll.LoadLibrary)

dadurch :

rt = _load_library('spatialindex_c-64.dll', ctypes.cdll.LoadLibrary)
Hicham Zouarhi
quelle