Неможливо запустити алгоритми 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, що називається оболонкою, є 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 та дотримуйтесь вирішення моєї відповіді.
— AndreJ

Відповіді:


9

Я отримую таку ж помилку з Ubuntugis версією QGIS та GRASS версії 7.2.0.

Здається, що 7.2 ще не правильно прийнято в обробці. Білет на нього вже є: https://hub.qgis.org/issues/16019 та https://lists.osgeo.org/pipermail/qgis-developer/2017-January/046671.html

Як вирішення, ви можете редагувати (як судо) /usr/share/qgis/python/plugins/processing/algs/grass7/Grass7Utils.pyрядок 251 до

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

і рядок 103 від Grass7AlgorithmProvider.pyдо

    return 'grass72'

Або зменшити рівень роботи до рівня GRASS 7.0.3 з основного репорта Ubuntu.

Команди GRASS 6 не працюватимуть із GRASS 7, тому ви можете відключити 161 GRASSкоманди.


Ще одне вирішення зі списку розсилки https://lists.osgeo.org/pipermail/qgis-user/2017-January/038907.html

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


ОНОВЛЕННЯ

Також повідомляється з http://hub.qgis.org/isissue/16110 та виправлено за допомогою http://hub.qgis.org/projects/quantum-gis/repository/reitions/099e7a77f2c32f469539f542a31df7b0d4b77dd3, що має працювати для версій GRASS 7.0 до 7.3

На жаль, виправлення не застосовано до QGIS 2.18.4, тому обхідні шляхи все ще потрібні.


добре. вирішення не працювало для мене. я намагався, але це не вдалося. Однак перехід через менеджер пакунків synaptics до трави 7.0 зробив свою справу. як я можу запевнити, що при наступному оновлення програмного забезпечення воно не оновиться до 7.2. знову? Я вже видалив сховища qgis та ubuntugis зі списку джерел, однак здається, що офіційні сховища ubuntu вже містять траву 7.2 ... принаймні, якщо я відкрию центр програмного забезпечення, який він пропонує мені 7.2.
— joaoal

1
З пакунків.ubuntu.com/… я бачу GRASS 7.2 лише для zesty. Можливо, у центрі програмного забезпечення все ще є перелік ubuntugis. Спробуйте apt-cache policy grassу вікні терміналу, щоб побачити, що дійсно доступно.
— AndreJ

Симпосилання не працювало для мене .. Я на монетному дворі з qgis, складеним з джерела і запущеним з папки виводу. Чи маю я також інші конфігурації для редагування? Дякую!
— Маттео

2
QGIS і ubuntugis, на жаль, часто не синхронізовані. Тож цього разу, коли я побачив, що є оновлення GRASS, я не встановив її. Тільки дивуйся, як дізнатися, коли настає потрібний час. Офіційні канали, здається, ігнорують цю справді прикрою проблему більшість часу. Це не весело, коли ламається QGIS кожні три місяці.
— Бернд В.

@BerndV. Я зазвичай встановлюю нові версії Linux спочатку у віртуальну коробку для тестування.
— AndreJ

4

Я вирішив проблему, перевстановивши траву 7.0.3 із сховища qgis. Трава від Ubuntugis repo - версія 7.2, яка не підтримується QGIS.

  1. видаліть GRASS GIS за допомогою sudo apt-get видалити траву-траву-серцевину-траву-док-траву-гуї

  2. вимкнути нестабільний сховище ubuntugis

  3. sudo apt-get install трава-трава-gui

Це працює для мене.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.