Geoportail-Luxembourg / qgis-pag-plugin

Plugin QGIS pour la gestion des PAG du Ministère de l'Intérieur du Grand-Duché de Luxembourg
MIT License
1 stars 2 forks source link

Projekterstellung funktioniert nicht unter Linux #120

Open frankbroniewski opened 3 years ago

frankbroniewski commented 3 years ago

Hi,

unter Linux schlägt die Projekterstellung fehl:

Traceback (most recent call last): File "/home/frank/.local/share/QGIS/QGIS3/profiles/default/python/plugins/PagLuxembourg/widgets/create_project/create_project_dialog.py", line 100, in accept PagLuxembourg.main.current_project.create(folder,name) File "/home/frank/.local/share/QGIS/QGIS3/profiles/default/python/plugins/PagLuxembourg/project.py", line 117, in create self._updateDatabase() File "/home/frank/.local/share/QGIS/QGIS3/profiles/default/python/plugins/PagLuxembourg/project.py", line 270, in _updateDatabase conn = self._getDbConnection() File "/home/frank/.local/share/QGIS/QGIS3/profiles/default/python/plugins/PagLuxembourg/project.py", line 711, in _getDbConnection conn.load_extension('/Library/Frameworks/SQLite3.framework/Versions/E/Modules/mod_spatialite.dylib') sqlite3.OperationalError: /Library/Frameworks/SQLite3.framework/Versions/E/Modules/mod_spatialite.dylib.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden

Wenn man sich den Code dazu ansieht, ist das auch kein Wunder, hier wird nur Windows und Macos behandelt.

Wenn man den Code durch

        try:
            conn = utils.spatialite_connect(self.database)
        except:
            conn = sqlite3.connect(self.database)
            conn.enable_load_extension(True)
            conn.load_extension('/Library/Frameworks/SQLite3.framework/Versions/E/Modules/mod_spatialite.dylib')

ersetzt, bekommt man das Plugin auch unter Linux ans Laufen. Keine Ahnung, ob der Code für den Mac überhaupt notwendig ist, utils.spatialite führt schon Tests durch, um das dynamische Laden des Spatialite-Moduls sicherzustellen. Und der fest eingestellte Pfad sieht mir auch eher nach Ärger aus ... allerdings kann ich das ohne einen Mac auch nicht nachprüfen

jaykayone commented 3 years ago

Unter MacOS funktionniert es gut, und Linux war bis jetzt nie eine Anforderung. Wenn dein Fix funktionniert, würde ich dich bitten, eine PR zu machen, wir haben selbst kein QGIS auf Linux, mit dem wir testen könnten

frankbroniewski commented 3 years ago

Linux war bis jetzt nie eine Anforderung Homeoffice macht es möglich ... ich teste meinen Vorschlag noch bei Gelegenheit unter Windows und schicke euch den PR, ob es weiterhin unter MacOS funktioniert muss ich leider euch überlassen mangels passender Hardware