GRASS, QGIS 3.6 ile çalışmıyor


23

QGE'yi OSGEO4w kullanarak 3.6 sürümüne güncelledim

Herhangi bir GRASS komut dosyasını çalıştırmaya çalıştığımda, aşağıdaki hata iletisini alıyorum:

Hata mesajı

Bu algoritma çalıştırılamaz :-( Belirtilen GRASS 7 klasörü "C: \ OSGEO4 ~ 1 \ bin \ bin" geçerli bir GRASS 7 modülü seti içermiyor. Lütfen İşleme ayarları iletişim kutusuna gidin ve GRASS'ın 7 klasör doğru yapılandırılmış

Görünüşe göre yol yok, ama değiştirmek için bir yer bulamadım; artık işlem ayarlarında 2.x sürümlerinde olduğu gibi bir seçenek değildir.

Bu işleme komut dosyalarını QGIS 3.6'da çalıştırmanın bir yolu var mı ve öyleyse, gerekli ayarları nasıl değiştirebilirim?


Düzenleme: İşlem seçeneklerim şöyle görünüyor

İşleme parametreleri


QGIS 3.4.5'i (yeni LTR) kullanmaya çalıştınız mı, bu sürümde çalışır.
ahmadhanb

Önce GRASS'ı başlattığımda QGIS'i yükleyin, her şey yolunda. Aksi halde değil.
Jim McLaughlin

Yanıtlar:


33

QGIS'i "GRASS 7.6.0 ile QGIS Desktop 3.6.0" kısayoluyla açarsam, her şey yolunda gider. QGIS'i "QGIS Desktop 3.6.0" kısayoluyla açarsam, sizinle aynı hatayı alıyorum


10
QGIS ile başlamak için GRASS'ın neden varsayılan seçenek olmadığını merak ediyorum.
Bay Che

Aynı sorun tekrar ortaya çıktı ve grasspaket OSGEO4w ile güncellenerek çözüldü .
Bay Che

QGIS Desktop x.x.x with GRASS x.x.xSeçeneği hiç almadım . Sadece QGIS Desktopseçeneği alıyorum . Ne yanlış olabilir?
Nancy

Benim gibi bu kısayola sahip değilseniz, zaten kısayolunuz olan QGIS uygulamalarıyla aynı klasörde "qgis-bin-g7.exe" yi işaret eden yeni bir tane oluşturabilirsiniz. Benim durumumda, klasör C: \ OSGeo4W64 \ bin. Bu, GRASS'ı mevcut en son QGIS sürümünüzle açacaktır. QGIS 3.4 kullanıyorum (şu anki uzun vadeli sürüm) ve kısayolu "qgis-ltr-bin-g7" yi gösterecek şekilde değiştirdim.
Karaçalı

Benim için böyle bir kısayol yok. Ve kesinlikle çevreye bağlı. Satırı call "%OSGEO4W_ROOT%\apps\grass\grass78\etc\env.bat"qgis toplu iş dosyama ekledim ve çim araçları çalışıyor. Elbette yol doğru olmalı ve çizgi bu çizgiden sonra gelmelidircall "%~dp0\o4w_env.bat"
Andreas Müller

6

Aynı sorunu yaşadım ama çim klasörümü "grass76" dan grass-7.6.0 "olarak yeniden adlandırarak çözmeyi başardım.


4

Sorunuzun bir kısmı ile ilgili olarak

"Görünüşe göre yol yok, ama değiştirmek için bir yer bulamadım; işlem ayarlarında artık 2.x sürümlerinde olduğu gibi bir seçenek değil."

çalışan GRASS klasörünün yolunu

Ayarlar> Seçenekler> İşleme> Sağlayıcılar> GRASS

QGIS 3.0.3 sürümüne göre

GRASS_setting_window

Burada 'GRASS7 folder', üzerine çift tıklayın.

Bu arada GRASS, QGIS 3.0.3 sürümümde iyi çalışıyor.


Bu ekran görüntüsü hangi sürümden? Benimkini ekledim, benden daha fazla seçeneğiniz var gibi görünüyor!
Kantan

1
QGIS 3.0.3 sürümü
Taras

Muhtemelen içinde GRASS ile QGIS başlatmadınız
Taras

Qgis 3.6 ve 3.10'da "GRASS7 klasörü" satırı eksik.
foobarbecue

Bununla birlikte, LTR (QGIS 3.4)
Taras

3

Bu grasswiki makalesine dayanarak işletim sistemi ortam değişkeni GISBASE'i GRASS kurulum klasörüne ayarlamak sorunu çözebilir (örn. C: \ OSGeo4W \ apps \ grass \ grass76).

QGIS 3.8 işleme seçenekleri hala GRASS klasörü için bir seçenek içermiyor.

Windows işletim sistemine ve QGIS 3.8 / GRASS 7.6'ya başvuruyorum.


benim için kafasına çivilenmiş: QGIS 3.8 için işleme seçeneklerinde GRASS klasörü yok. GRASS ile ilişkili birkaç klasör daha var, ancak açıkça GRASS olan hiçbir şey yok. QGIS 3.8.1 kullanıyorum. Taras'ın OP'nin "QGIS with GRASS" uygulamasını başlatmadığı yönündeki tavsiyesine göre, şu anda makinemde benim için bir seçenek değil ve OP için de bir tane olmayabilir. Geçmişte bu seçeneğe sahip olduğumu biliyorum, QGIS'i bu yeni (benim için) makineye yüklediğimde farklı olarak ne yaptığımı bilmiyorum. Yeni çevre yolunu eklemek benim için işe yaradı gibi görünüyor.
shea

Benim için düzelttim!
foobarbecue

2

Bana göre, "normal" qgis başlatılırken bazı ortam değişkenleri eksik gibi görünüyor. Bunu qgis-ltr-bin.env ve qgis-ltr.bat değiştirerek QGIS 3.4.13'te düzelttim . 3.6, 3.8 (...) sürümünde bu iki dosya farklı ama benzer bir ada sahip olacaktır. Eğer sen

qgis başlat simgesine sağ tıklayın> dosya yolunu aç

bu sizi ... \ OSGeo4W64 \ bin dizinine veya qgis'i kurduğunuz yere yönlendirmelidir. İki dosyayı orada bulacaksınız. Değişiklik yapmak için bunları standart bir metin düzenleyicisiyle (örn. Not defteri) açın:

qgis-ltr-bin.env :

  • PATH değerini qgis-ltr-bin-g7.env dosyasına (aynı klasörde bulunur) kaydedilen aynı PATH satırıyla değiştirin
  • dan QGIS-ltr-bin-g7.env değişkenler GISBASE, GRASS_PROJSHARE ve GRASS_PYTHON eklemek

qgis-ltr.bat içinde :

  • qgis-ltr-grass7.bat dosyasından satır 3 ekleyin (aynı klasörde bulunur): call "%OSGEO4W_ROOT%\apps\grass\grass78\etc\env.bat"(belki de çim klasörünün sürümünüzde farklı bir adı vardır)
  • PATH değerini qgis-ltr-grass7.bat dosyasına kaydedilen aynı PATH satırıyla değiştirin (satır 7)

QGIS 3.5.15 çalışmaları ile şimdi teşekkürler.
natan

1

@ Fryried QGIS 3.10'da C: \ OSGeo4W64 \ apps \ grass \ grass78 klasörü C: \ OSGeo4W64 \ apps \ grass \ grass-7.8.0 olarak değiştirildi.

GÜNCELLEME: basit klasör adı değişikliği düzeltmesi, çim araç kutusu işlevlerinin QGIS 3.10'da açılmasına izin verdi. Ancak yürütüldüğünde, GRASS işlemlerinin tümü günlükte aşağıdaki hatayla başarısız oldu:

Sistem belirtilen yolu bulamıyor. '""' dahili veya harici bir komut, çalıştırılabilir program veya toplu iş dosyası olarak tanınmıyor.

Bu nedenle, başka bir yanıtta açıklandığı gibi Windows ortam değişkenini ayarlamayı denedim (GRASS klasör adını kullanarak 'grass78'e geri döndü) ve GRASS işlemleri artık QGIS'de düzgün çalışıyor. Bu doğru çözüm gibi görünüyor.


Girişiniz için teşekkürler, beni hangi değişkenin nerede ve nasıl ayarlanacağını bilmek için bir kaynağa yönlendirebilir misiniz?
Kantan

1
Öyle Windows Explorer, Windows 10 kullanın: sağ tıklayıp Bu PC'yi seçin Özellikler ' ardından Gelişmiş sistem ayarları , ardından Gelişmiş ardından sekmesini, Çevresel Değişkenler . Yeni ... seçeneğini tıklayın ve Değişken Adı'na "GISBASE" yazın ve Değişken Değeri'ne "C: \ OSGeo4W64 \ apps \ grass \ grass78" girin [ NOT: QGIS sürümüne ve / veya GRASS sürümünüze bağlı olarak yolunuz farklı olabilir ]. Tamam'ı tıklatın , yeni oluşturulan değişkenin listeye eklendiğini görmelisiniz.
ewolf

0

ToolBox'ı (QGIS ile) işlemede GRASS kullanmak için başka bir çözüm C:\OSGeo4W64\apps\qgis\python\processing\algs\grass7\, dosyayı bulmak Grass7Utils.pyve terimleri değiştirmek:

  • grass-7.tarafından grass7hat 223 veya oralarda bulunan kod
  • ardından for version in ['', '7', '76', '74', '72', '71', '70']:" for version in ['', '7', '78', '76', '74', '72', '71', '70']:229. satırda veya bu kodun yakınında bulunan kodda.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.