2017-09-23 12 views
2

J'ai installé (et désinstallé) et installé GDAL 2.2.2 dans Windows 10 en utilisant la roue Christoph. Cependant, lorsque je tente d'importer je reçois:Une autre erreur d'importation GDAL dans Windows

Installing collected packages: GDAL 
Successfully installed GDAL-2.2.2 
(e4) C:\Users\R1702898\Documents\Empirical_v4>python 
Python 3.4.4 |Continuum Analytics, Inc.| (default, Jun 15 2016, 15:25:08)  
[MSC v.1600 64 bit (AMD64)] on win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> from osgeo import ogr 
Traceback (most recent call last): 
File "<stdin>", line 1, in <module> 
File "C:\Users\R1702898\Documents\e4\lib\site-packages\osgeo\__init__.py", line 35, in <module> 
_gdal = swig_import_helper() 
File "C:\Users\R1702898\Documents\e4\lib\site-packages\osgeo\__init__.py", line 31, in swig_import_helper 
_mod = imp.load_module('_gdal', fp, pathname, description) 
File "C:\Users\R1702898\Documents\e4\lib\imp.py", line 243, in load_module 
return load_dynamic(name, filename, file) 
ImportError: DLL load failed with error code -1073741795 

La seule façon dont il est possible d'installer dans Windows utilise les roues. Tout le reste échoue. La seule roue disponible est pour version 2.2.2 Toutes les autres dépendances: Fiona, six, numpy, pandas sont installés. Bien que les géopandas n'importeront pas non plus (parce qu'elles ont besoin de ogr). J'ai également mis le chemin à la poubelle.

Toute aide. S'il vous plaît. Merci.

+0

Personnellement, j'utiliser Conda, qui permet de résoudre la grande majorité de ces erreurs. Parce que GDAL s'appuie sur Numpy, je pense qu'ils doivent être compilés avec le même compilateur? –

+0

Essayé conda conda-force pip tout. Je pense que c'est un problème d'ajustement des chemins ... Je vais essayer de tout désinstaller une fois de plus! –

+0

Il semble que GDAL 2.2.1 soit incompatible avec beaucoup d'autres modules. Je réitère la question: Est-ce que quelqu'un sait comment obtenir une version de roue plus ancienne? Merci https://stackoverflow.com/questions/46366884/repository-of-old-versions-of-windows-binary-library-wheels-for-python –

Répondre

1

Une des choses que j'éviterais est de mélanger et assortir différentes manières d'installer. Si vous utilisez déjà Conda, respectez-le. Je n'utilise pip installation en dernier recours. Parce que GDAL utilise du code compilé, il peut devenir compliqué si vous installez des paquets basés sur GDAL qui sont construits avec des compilateurs différents, quelque chose que vous rencontrez probablement. C'est exactement ce que Conda résout en regardant attentivement les exigences et les dépendances. Dans votre cas, une partie de la difficulté vient de l'utilisation de Fiona, bien que ce soit un excellent package, ils ont des exigences de version très strictes, ce qui en fait la dépendance la plus facile à avoir. Voir la yaml de Conda-Forge: https://github.com/conda-forge/fiona-feedstock/blob/master/recipe/meta.yaml

Sur ma machine (Win 10 64bit) il est encore possible d'obtenir tous les paquets que vous liste ci-dessus en utilisant uniquement Conda,

Mon approche serait:

1) Mettez à jour votre Conda à une version plus récente (conda update conda -n root)

2) Créer un nouvel environnement:

conda create -n gdaltest python=3.6 gdal fiona geopandas numpy -c conda-forge 

En raison des restrictions dans certaines des recettes, il résout (pour moi) d'utiliser par exemple Numpy 1.11, au lieu de la dernière 1.13.

3) Activez le nouvel environnement (activate gdaltest) et vérifiez si le script d'activation a fonctionné. Cela devrait définir correctement les variables d'environnement, c'est une étape importante quand il s'agit de conflits.

Dans cmd exécutez SET et vérifiez si GDAL_DATA est défini sur l'environnement que vous venez d'activer. Vérifiez également si votre environnement d'activation vient en premier dans la variable PATH, il devrait avoir ajouté plusieurs dossiers de votre environnement (comme ..\Library\bin, ..\Scripts etc.).

Cela devrait suffire. Vous pouvez le vérifier en démarrant Python (assurez-vous que l'environnement correct est actif) et commencer à importer gdal, etc. fiona

+0

Merci. Je vais jeter un coup d'oeil et essayer et je reviendrai à vous. –

+0

Oui. Cela a bien fonctionné. Merci. Enfin, je peux vous dire ... Je n'ai jamais su que vous pouviez installer trois bibliothèques à la fois. Vivre et apprendre. Meilleur, –

+0

Excellent, heureux que cela a fonctionné! L'avantage de tout faire en même temps est que tout problème de dépendance est immédiatement visible avant même la création de l'environnement. De cette façon, il est plus facile, par exemple, d'essayer à nouveau avec une version différente de Python. –