O processamento GRASS não está funcionando no QGIS?

13

Estou tendo vários problemas para que os algoritmos GRASS funcionem na caixa de ferramentas Processamento.

Quando você instala o QGIS 3.4 (MacOS High Sierra), primeiro ele não encontra o python - que resolvi criando uma variável PATH personalizada. Em seguida, ele reclama do uso inconsistente de guias e espaços, que também resolvi editando o arquivo grass74 dentro do aplicativo QGIS. Agora estou recebendo esse erro, seja qual for o algoritmo GRASS que eu use :

WARNING: Default locale settings are missing. GRASS running with C locale.
Default locale not found, using UTF-8
Traceback (most recent call last):
File "/Applications/QGIS3.app/Contents/MacOS/grass/grass74", line 2029, in <module>
main()
File "/Applications/QGIS3.app/Contents/MacOS/grass/grass74", line 1880, in main
set_paths(grass_config_dir=grass_config_dir)
File "/Applications/QGIS3.app/Contents/MacOS/grass/grass74", line 622, in set_paths
os.environ['MANPATH'] = sys_man_path
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/os.py", line 674, in __setitem__
value = self.encodevalue(value)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/os.py", line 744, in encode
raise TypeError("str expected, not %s" % type(value).__name__)
TypeError: str expected, not bytes

No momento, tenho o Python 3.6.6 instalado e o QGIS 3.4.2 (a versão mais recente do 24Nov2018), mas também tentei com o Python 3.6.5, Python 3.6.7, QGIS 3.0, 3.2, 3.3, 3.4.1. .. Não é bom, mesmo erro.

Encontrei pessoas por aqui com problemas semelhantes (relacionados à codificação) para o Windows QGIS, que foi resolvido, mas definindo a região do Windows para os EUA. Embora meu sistema operacional esteja em português, estou usando o QGIS em inglês e tentei configurar o sistema operacional para a região da América e para o idioma inglês, mas o erro persiste.

Alguém sabe alguma coisa sobre isso?

rubslopes
fonte
Há uma chance de que algumas das pastas com as quais você está trabalhando contenham caracteres irreconhecíveis usando UTF-8? Como á, é, ñ, è?
precisa
Isso não fornece uma resposta para a pergunta. Para criticar ou solicitar esclarecimentos a um autor, deixe um comentário abaixo da postagem. - Do comentário
Vince
@guillermo_dangelo Pensei que poderia ser isso, mas testei mover os arquivos para uma pasta "segura de caracteres" e não funcionou.
rubslopes

Respostas:

4

O GRASS GIS 7.4 só funciona com o Python 2. Estamos trabalhando na atualização que é feita principalmente na versão atual de desenvolvimento GRASS GIS 7.7 (para tornar o 7.8 estável então ou até 8.0).

Se possível, considere atualizar para o GRASS GIS 7.6, que será lançado em breve (junto com o Python 2).

Editar set 2019:

GRASS GIS 7.8.0 com suporte a Python 3, conforme lançado:

markusN
fonte
... mas para uso no QGIS, você deve se ater à versão GRASS suportada pelo QGIS. Portanto, por enquanto, uma caixa virtual com QGIS 2.18 LTR no interior pode ser a melhor escolha.
18711 AndreJ
1
O QGIS procura grass74, grass72, grass70, que eu saiba. Então você pode usar um truque simples e instalar o GRASS GIS 7.6 e criar um link para grass74. O software é de 99,9% compatível ...
markusN
Não, se você quiser o plugin GRASS no Ubuntu. Atualmente, a versão Ubuntugis do QGIS 3.4.2 não a instala porque o Ubuntugis atualizou recentemente para o GRASS 7.4.3, e o QGIS espera que o grass-core e o grass742.
AndreJ
Estranho, normalmente as coisas devem estar sincronizadas. No caso vale a pena um relatório de bug lá.
markusN
Então, por que os arquivos de instalação me dizem para instalar o Python 3.6.x, mas não dizem nada sobre o Python 2? Parece que eu poderia instalar o QGIS 3 mesmo sem ter o Python2 na minha máquina.
rubslopes