instalando o rtree no windows 64 bits

12

Estou usando o windows10 64 bits, meu os.name é 'nt', usei o pip para instalar, mas está reclamando sobre o spatialindex_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

Eu baixei o rtree-0.8.2 e, em seguida, execute o python setup.py install e tenho a mesma mensagem

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>  

Carreguei os arquivos DLL do spatialindex 'libspatialindex-1.8.1-win-msvc-2010-x64-x32.zip'. esse arquivo contém 32 e 64 bits, descompacte e coloque na pasta de instalação, ao instalar usando python setuo.py, instale-o ainda reclamando do arquivo dll spatialindex

bhalitim
fonte

Respostas:

13

Por favor, veja Como instalar o pyproj no arcpy?

1) o módulo RTree precisa ser compilado com uma versão da libspatialindex instalada no sistema (seu computador) e não simplesmente adicionando a DLL spatialindex após
2) O Windows não possui compilador por padrão, como no Linux ou Mac OS X, portanto, você não pode instalar o RTree com pip ou setup.py install
3) na página Índice do pacote Python do RTree , abaixo do download , está especificado

Binários do Windows http://www.lfd.uci.edu/~gohlke/pythonlibs/#rtree

Os arquivos são Rtree-0.8.2-cp27-none-win32.whl e Rtree-0.8.2-cp27-none-win_amd64.whl

Para instalar um arquivo whl, faça o download do arquivo e

pip install Rtree-0.8.2-cp27-none-....whl (32 or 64)
gene
fonte
RTREE-0.8.2-CP27-nenhuns-win32.whl não é suportado em Platfom python34
bhalitim
Então você precisa compilar o Rtree com uma versão do libspatialindex, mas não posso ajudá-lo porque não uso o Windows
gene
É possível incluir esta roda baixada no seu próprio pacote e ter o pip instalado a partir daí? No momento não posso especificar rtree como uma dependência ...
Robin De Schepper
3

Eu tive o mesmo problema e resolvi-o alterando o arquivo core.py no Rtree em

C: \ PROGRA ~ 1 \ QGIS2 ~ 1.18 \ apps \ Python27 \ lib \ pacotes de sites \ rtree \ core.py

e alterou esta linha:

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

por este :

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