ไม่สามารถเรียกใช้อัลกอริทึม Grass ใน QGIS 2.18 บน Ubuntu 16.04


9

ฉันมี QGIS และ GRASS ติดตั้งผ่านที่เก็บ UbuntuGIS ถ้าฉันพยายามรันอัลกอริทึม GRASS 6 หรือ 7 ฉันได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:

"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."

ฉันตรวจสอบคำถามอื่น ๆ เกี่ยวกับปัญหานี้ แต่ส่วนใหญ่จัดการกับการติดตั้งบนระบบ Windows:

บน linux ฉันไม่จำเป็นต้องกำหนดค่าพา ธ ของโฟลเดอร์ GRASS เนื่องจากQGIS ช่วยในการตั้งค่าแอพพลิเคชั่นภายนอกบอกฉัน grassหญ้าวิ่งออกจากเปลือกโดยการพิมพ์ GRASS 7.2.0 (2016)หญ้ารุ่นเรียกได้ว่าเปลือกเป็น

นอกจากนี้ฉันตรวจสอบว่า GRASS 6 และ 7 เปิดใช้งานในเมนูผู้ให้บริการเพิ่มเติมในกล่องเครื่องมือของ QGIS

มีข้อเสนอแนะใดที่สามารถแก้ไขปัญหานี้ได้บ้าง

แก้ไข

ในขณะเดียวกันฉันถอนการติดตั้งและติดตั้งใหม่อย่างสมบูรณ์qgis python-qgis qgis-plugin-grassจากที่เก็บ QGIS ที่เป็นทางการ ... แต่ข้อผิดพลาดยังคงเกิดขึ้น

แก้ไข 2 การ ตรวจสอบบันทึก qgis ในแผงข้อความบันทึกฉันพบภายใต้แท็บ "ปลั๊กอิน" ที่ปลั๊กอินหญ้าไม่สามารถโหลดได้อย่างถูกต้อง:

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))

สำหรับ Edit2: ดูเหมือนว่า GRASS 7.0.3 ถูกค้นหา แต่คุณมีเพียง 7.2.0 บนดิสก์ อย่าผสมแพ็คเกจ Ubuntugis และแพ็คเกจที่ไม่ใช่ ubuntugis
AndreJ

@ Andrej ฉันคิดว่าการผสมผสานนี้น่าจะเป็นปัญหาหลัก ฉันอาจเพิ่มที่เก็บ ubuntugis และ qgis ฉันพยายามเพิ่มที่เก็บ qgis เท่านั้นและติดตั้งใหม่ทั้งหมด แต่มันยังไม่สามารถแก้ไขได้ ตอนนี้ฉันไม่ได้รับข้อความใด ๆ ที่ปลั๊กอินโหลดแม้ว่ามันจะติดตั้ง ข้อเสนอแนะใด ๆ เกี่ยวกับฉันจะทำความสะอาดความยุ่งเหยิงที่เหลืออยู่ได้อย่างไร?
joaoal

1
อาจลดระดับ GRASS เป็น 7.0.3 หรือลบแพ็คเกจ debian ของ QGIS (ด้วยการล้างดูที่askubuntu.com/questions/187888/ ...... ) กลับไปที่ ubuntgis และทำตามวิธีแก้ปัญหาในคำตอบ
AndreJJ

คำตอบ:


9

ฉันได้รับข้อผิดพลาดเดียวกันกับเวอร์ชั่น Ubuntugis ของ QGIS และ GRASS เวอร์ชั่น 7.2.0

ดูเหมือนว่า 7.2 ยังไม่ได้นำมาใช้อย่างถูกต้องในการประมวลผล มีตั๋วอยู่แล้ว: https://hub.qgis.org/issues/16019และhttps://lists.osgeo.org/pipermail/qgis-developer/2017- มกราคม/046671.html

คุณสามารถแก้ไข (เป็น sudo) /usr/share/qgis/python/plugins/processing/algs/grass7/Grass7Utils.pyบรรทัด 251 ถึง

            command = 'grass72 ' + Grass7Utils.grassMapsetFolder() \

และสาย 103 จากGrass7AlgorithmProvider.pyถึง

    return 'grass72'

หรือปรับลดรุ่นเป็น GRASS 7.0.3 จาก repo หลักของ Ubuntu

คำสั่ง GRASS 6 จะไม่ทำงานกับ GRASS 7 ดังนั้นคุณสามารถปิดการใช้งานGRASSคำสั่ง161 ได้


อีกหนึ่งวิธีแก้ปัญหาจากรายการส่งเมลhttps://lists.osgeo.org/pipermail/qgis-user/2017- มกราคม/038907.html

sudo ln -s /usr/bin/grass72 /usr/bin/grass70


UPDATE

รายงานด้วยhttp://hub.qgis.org/issues/16110และแก้ไขด้วยhttp://hub.qgis.org/projects/quantum-gis/repository/revisions/099e7a77f2c32f469539f542a31df7b0d4b77dd3ซึ่งควรทำงานกับรุ่น GRASS 7.0 ถึง 7.3

น่าเสียดายที่การแก้ไขไม่ได้ถูกนำไปใช้กับ QGIS 2.18.4 ดังนั้นการแก้ไขปัญหาจึงยังจำเป็น


ตกลง. การแก้ปัญหาไม่ได้ผลสำหรับฉัน ฉันพยายาม แต่มันล้มเหลว อย่างไรก็ตามการลดระดับผ่านผู้จัดการแพคเกจ synaptics เพื่อหญ้า 7.0 ได้หลอกลวง ฉันจะมั่นใจได้อย่างไรว่าด้วยการอัพเดตซอฟต์แวร์ครั้งต่อไปจะไม่อัพเกรดเป็น 7.2 อีกครั้งหรือไม่ ฉันได้ลบ qgis และ ubuntugis repositories ออกจากรายการแหล่งข้อมูลแล้ว แต่ดูเหมือนว่าที่เก็บของ Ubuntu อย่างเป็นทางการนั้นมีหญ้า 7.2 ... อย่างน้อยถ้าฉันเปิดศูนย์ซอฟต์แวร์มันก็ให้ฉัน 7.2
joaoal

1
จากpackages.ubuntu.com/…ฉันเห็น GRASS 7.2 สำหรับ zesty เท่านั้น บางทีศูนย์ซอฟต์แวร์อาจยังคงมีรายการ ubuntugis อยู่ ลองapt-cache policy grassในหน้าต่าง Terminal เพื่อดูว่ามีอะไรให้ใช้จริงๆ
AndreJJ

symlink ไม่ทำงานสำหรับฉัน .. ฉันอยู่ใน Mint ด้วย qgis รวบรวมจากแหล่งที่มาและเรียกใช้จากโฟลเดอร์ผลลัพธ์ ฉันมีการกำหนดค่าอื่น ๆ ให้แก้ไขด้วยหรือไม่ ขอบคุณ!
matteo

2
QGIS และ ubuntugis น่าเสียดายที่มักจะไม่ซิงค์กัน ดังนั้นครั้งนี้เมื่อฉันเห็นว่ามีการอัพเกรด GRASS ฉันไม่ได้ติดตั้ง แค่สงสัยว่าจะรู้ได้อย่างไรว่าเวลาที่เหมาะสมมาถึงแล้ว ช่องทางการดูเหมือนว่าจะไม่สนใจปัญหาที่น่ารำคาญนี้เป็นส่วนใหญ่ มันไม่สนุกเลยที่จะมี QGIS ที่เสียหายทุก ๆ สามเดือน
Bernd V.

@BerndV ฉันมักจะติดตั้ง Linux รุ่นใหม่ก่อนในกล่องเสมือนจริงสำหรับการทดสอบ
AndreJ

4

ฉันแก้ไขปัญหาโดยติดตั้ง grass 7.0.3 ใหม่จากที่เก็บ qgis ต้นหญ้าจาก Ubuntugis repo เป็นเวอร์ชั่น 7.2 ซึ่งไม่รองรับโดย QGIS

  1. ลบ GRASS GIS โดย sudo apt-get ลบหญ้าหญ้า -core grass-doc grass-gui

  2. ปิดใช้งานที่เก็บ ubuntugis-unstable

  3. sudo apt-get install grass grass-gui

มันใช้งานได้สำหรับฉัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.