Pemrosesan GRASS tidak berfungsi pada QGIS?

13

Saya telah mengalami beberapa masalah dalam membuat algoritma GRASS bekerja dari kotak alat Pemrosesan.

Ketika Anda baru menginstal QGIS 3.4 (MacOS High Sierra), pertama tidak menemukan python - yang saya selesaikan dengan membuat variabel PATH kustom. Kemudian ia mengeluh tentang penggunaan tab dan spasi yang tidak konsisten, yang juga saya selesaikan dengan mengedit file grass74 di dalam aplikasi QGIS. Sekarang saya mendapatkan kesalahan ini, apa pun algoritma GRASS yang saya gunakan :

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

Saat ini saya sudah menginstal Python 3.6.6 dan QGIS 3.4.2 (rilis 24Nov2018 terbaru), tetapi saya juga sudah mencoba dengan Python 3.6.5, Python 3.6.7, QGIS 3.0, 3.2, 3.3, 3.4.1. .. Tidak baik, kesalahan yang sama.

Saya menemukan orang-orang di sini memiliki masalah yang sama (terkait dengan pengkodean) untuk Windows QGIS, yang diselesaikan tetapi pengaturan wilayah Windows ke Amerika Serikat. Meskipun OS saya dalam bahasa Portugis, saya menggunakan QGIS dalam bahasa Inggris dan mencoba mengatur OS ke wilayah Amerika dan bahasa Inggris, tetapi kesalahan tetap ada.

Adakah yang tahu tentang ini?

rubslopes
sumber
Ada kemungkinan beberapa folder yang Anda gunakan berisi karakter yang tidak dapat dikenali menggunakan UTF-8? Seperti á, é, ñ, è?
guillermo_dangelo
Ini tidak memberikan jawaban untuk pertanyaan itu. Untuk mengkritik atau meminta klarifikasi dari penulis, tinggalkan komentar di bawah posting mereka. - Dari Ulasan
Vince
@guillermo_dangelo Saya pikir bisa jadi itu, tapi saya menguji memindahkan file ke folder "karakter aman" dan tidak melakukannya.
rubslopes

Jawaban:

4

GRASS GIS 7.4 hanya bekerja dengan Python 2. Kami sedang mengerjakan pembaruan yang sebagian besar dilakukan dalam versi pengembangan saat ini GRASS GIS 7.7 (menjadi 7,8 stabil saat itu atau bahkan 8,0).

Jika memungkinkan bagi Anda, pertimbangkan untuk memperbarui ke GRASS GIS 7.6 yang akan segera dirilis (bersama dengan Python 2).

Sunting Sep 2019:

GRASS GIS 7.8.0 dengan dukungan Python 3 telah dirilis:

markN
sumber
... tetapi untuk digunakan dalam QGIS Anda harus tetap menggunakan versi GRASS yang didukung oleh QGIS. Jadi untuk saat ini, kotak virtual dengan QGIS 2.18 LTR di dalamnya mungkin menjadi pilihan terbaik.
AndreJ
1
QGIS mencari grass74, grass72, grass70 sepengetahuan saya. Jadi Anda bisa menggunakan trik sederhana dan menginstal GRASS GIS 7.6 dan membuat tautan ke grass74. Perangkat lunak ini 99,9% kompatibel ...
markusN
Tidak jika Anda ingin plugin GRASS di bawah Ubuntu. Saat ini, versi Ubuntugis dari QGIS 3.4.2 tidak menginstalnya karena Ubuntugis baru-baru ini ditingkatkan ke GRASS 7.4.3, dan QGIS mengharapkan grass-core dan grass742.
AndreJ
Aneh, biasanya semuanya harus sinkron. Dalam hal layak laporan bug di sana.
MarkusN
Jadi mengapa file instalasi memberitahu saya untuk menginstal Python 3.6.x tetapi tidak mengatakan apa-apa tentang Python 2? Sepertinya saya dapat menginstal QGIS 3 bahkan tanpa memiliki Python2 di komputer saya.
rubslopes