Impossible d'exécuter GRASS 7.8 dans RStudio

Oct 25 2020

En utilisant la commande initGRASS dans RStudio sous Windows, j'obtiens l'erreur suivante après avoir installé une nouvelle version de GRASS sur un nouveau chemin:

Error : XML content does not seem to be XML: 'proj_get_authorities_from_database: Cannot find proj.db'
In addition: Warning message:
In system(cmd0, intern = TRUE) :
  running command 'g.proj.exe --interface-description' had status 5
Error in parseGRASS(cmd, legacyExec = legacyExec) : g.proj not parsed

Extrait de code:

initGRASS("C:/GRASS GIS 7.8",
          home = tempdir(),
          mapset = "PERMANENT",
          override = TRUE)

Pour une raison quelconque, RStudio calcule quelque chose lorsque j'exécute une fonction GRASS, mais ne lit aucun résultat mais affiche le message d'erreur ci-dessus.

Les variables environnementales, que j'ai vérifiées dans la coque Grass, me semblent correctes (compte tenu de: https://github.com/OSGeo/grass/blob/master/mswindows/env.bat).

Quelqu'un peut-il aider à résoudre le problème ou au moins expliquer le message d'erreur?

J'ai juste essayé d'utiliser la version 7.6 de Grass et cela fonctionne . Dans la progression en cours, je verrai si l'utilisation de cette version durera pour mon travail. D'ici là, j'attends avec impatience vos réponses et vos commentaires.

Merci AJ

Réponses

2 humperderp Oct 26 2020 at 22:24

Bien, je vais essayer de fournir une réponse. Ceci n'est qu'une légère élaboration sur la réponse donnée par @markusN à laquelle vous avez lié, car le problème semble être le même et lié aux variables environnementales GRASS GIS. (Voici à nouveau le lien donné par @markusN, qui devrait vous aider à définir correctement les variables d'environnement nécessaires:https://github.com/OSGeo/grass/blob/master/mswindows/env.bat)

Commencez par démarrer GRASS GIS et allez dans le shell. Puisque vous semblez être sous Windows, vous pouvez ensuite taper «set» et appuyer sur Entrée pour voir toutes les variables d'environnement. Si, à la place, vous voulez voir où pointe spécifiquement GRASS_PYTHON, par exemple, vous pouvez taper 'set GRASS_PYTHON'. Si ce n'est pas défini, vous obtiendrez le message "Variable d'environnement GRASS_PYTHON non définie". Vous pouvez l'utiliser pour vérifier que les variables répertoriées dans le lien sont correctement définies.

Quant aux mots avec des signes de pourcentage autour d'eux dans le lien, ce sont des espaces réservés. Donc, avant de pouvoir exécuter les commandes données dans le lien, vous devez vous assurer que GISBASE pointe vers votre installation locale de GRASS GIS. Lorsque vous donnez une commande contenant% GISBASE%, celle-ci sera alors remplacée par le chemin complet de l'installation. Essayez de taper "set GISBASE". Si cela n'est pas défini, tapez "set GISBASE = [chemin vers l'installation]" en remplaçant le texte entre crochets par le chemin de votre installation locale. Après cela, vous devriez pouvoir utiliser les commandes répertoriées dans le lien pour définir les variables d'environnement nécessaires si elles ne sont pas définies correctement.