J'ai QGIS et GRASS installés via les référentiels UbuntuGIS. Si j'essaie d'exécuter un algorithme GRASS 6 ou 7, j'obtiens le message d'erreur suivant:
"This algorithm cannot be run :-( It seems that GRASS GIS 7 is not correctly installed and configured in your system. Please install it before running GRASS GIS 7 algorithms."
J'ai vérifié d'autres questions sur ce problème, mais la plupart traitent de l'installation sur les systèmes Windows:
- "Dépendance manquante. Cet algorithme ne peut pas être exécuté :-(" QGIS + GRASS Windows 7
- Erreur d'installation de l'extension Grass 6 dans Grass 7
- Comment rendre l'addon GRASS 7 disponible dans QGIS 2.12?
Sur linux, je n'ai pas à configurer le chemin du dossier GRASS comme le dit l' aide QGIS sur la configuration des applications externes. L'herbe s'écoule de la coquille en tapant grass
. La version Grass appelée par le shell est GRASS 7.2.0 (2016)
.
De plus, j'ai vérifié que GRASS 6 et 7 est activé dans le menu des fournisseurs supplémentaires dans la boîte à outils de QGIS.
Une suggestion que pourrait-on faire pour résoudre ce problème?
Éditer
Pendant ce temps, j'ai complètement désinstallé et réinstallé qgis python-qgis qgis-plugin-grass
les dépôts officiels de QGIS ... mais l'erreur continue.
Edit 2 Vérification des journaux pour les qgis dans le panneau des messages de journal J'ai découvert sous l'onglet "plugins" que le plugin grass ne se charge pas correctement:
2017-01-23T14:10:22 1 Failed to load /usr/lib/qgis/plugins/libgrassplugin7.so (Reason: Cannot load library /usr/lib/qgis/plugins/libgrassplugin7.so: (libgrass_gis.7.0.3.so: cannot open shared object file: No such file or directory))
2017-01-23T14:10:22 1 Failed to load /usr/lib/qgis/plugins/libgrassprovider7.so (Reason: Cannot load library /usr/lib/qgis/plugins/libgrassprovider7.so: (libgrass_gis.7.0.3.so: cannot open shared object file: No such file or directory))
2017-01-23T14:10:22 1 Failed to load /usr/lib/qgis/plugins/libgrassrasterprovider7.so (Reason: Cannot load library /usr/lib/qgis/plugins/libgrassrasterprovider7.so: (libgrass_gis.7.0.3.so: cannot open shared object file: No such file or directory))
la source
Réponses:
J'obtiens la même erreur avec la version Ubuntugis de QGIS et GRASS version 7.2.0.
Il semble que 7.2 ne soit pas encore correctement adopté dans le traitement. Il y a déjà un ticket pour cela: https://hub.qgis.org/issues/16019 et https://lists.osgeo.org/pipermail/qgis-developer/2017-January/046671.html
Pour contourner ce problème, vous pouvez modifier (en tant que sudo) la
/usr/share/qgis/python/plugins/processing/algs/grass7/Grass7Utils.py
ligne 251 pouret ligne 103 de
Grass7AlgorithmProvider.py
àOu rétrogradez vers GRASS 7.0.3 à partir du référentiel principal d'Ubuntu.
Les commandes GRASS 6 ne fonctionneront pas avec GRASS 7, vous pouvez donc désactiver les 161
GRASS
commandes.Juste une autre solution de contournement de la liste de diffusion https://lists.osgeo.org/pipermail/qgis-user/2017-January/038907.html
sudo ln -s /usr/bin/grass72 /usr/bin/grass70
MISE À JOUR
Également signalé avec http://hub.qgis.org/issues/16110 et corrigé avec http://hub.qgis.org/projects/quantum-gis/repository/revisions/099e7a77f2c32f469539f542a31df7b0d4b77dd3 Cela devrait fonctionner pour les versions GRASS 7.0 à 7.3
Malheureusement, le correctif n'a pas été appliqué à QGIS 2.18.4, donc les solutions de contournement sont toujours nécessaires.
la source
apt-cache policy grass
dans une fenêtre de terminal pour voir ce qui est vraiment disponible.J'ai résolu le problème en réinstallant grass 7.0.3 à partir du référentiel qgis. L'herbe du repo Ubuntugis est la version 7.2, qui n'est pas prise en charge par QGIS.
enlever le GRASS GIS par sudo apt-get enlever l'herbe-core grass-doc grass-gui
désactiver le référentiel ubuntugis-unstable
sudo apt-get installer herbe herbe-gui
Ça marche pour moi.
la source