#1 Tue 10 September 2019 10:52
- TrsBar
- Juste Inscrit !
- Lieu: Niort
- Date d'inscription: 9 Sep 2019
- Messages: 4
QGIS: Application standalone
Bonjour,
Je viens de commencer un nouveau projet. Pour vous contextualiser, j'étais auparavant développeur (web) et je vais maintenant m'orienter vers les SIG. Je viens d'intégrer une nouvelle structure et nous travaillons au développement d'un nouvel outil. Nous souhaiterions nous basé sur QGis pour développer celui-ci.
J'ai consulté la documentation et je souhaiterais mettre en place une application dite "standalone".
Voici ce que j'ai fait :
-> install Qgis (3.8.x)
-> install Python (3.7.x) (le PATH pointe correctement)
-> install pip
-> install PyQT5
-> je crée mon projet, je mets le code python de base (https://docs.qgis.org/testing/en/docs/p … ne-scripts) "dans un fichier"et je le run (py test.py).
Avant dans ma console je fais SET PYTHONPATH=C:/OSGeo4W64/apps/qgis/python et là j'obtiens donc probleme de :
Code:
ImportError: DLL load failed: %1 n’est pas une application Win32 valide
Je ne sais pas ce qu'y déconne et je ne vois pas comment m'y prendre. Je suis sur le probleme depuis plusieurs jours, en vain. Quelqu'un aurait il une idée pour que je puisse me lancer ?
Merci d'avance.
Hors ligne
#2 Tue 10 September 2019 15:55
Re: QGIS: Application standalone
Bonjour,
-> install Qgis (3.8.x)
Vous avez bien fait cette install avec l'installateur OSGEO4W ?
Hors ligne
#3 Thu 12 September 2019 21:05
- TrsBar
- Juste Inscrit !
- Lieu: Niort
- Date d'inscription: 9 Sep 2019
- Messages: 4
Re: QGIS: Application standalone
Bonjour,
Pour vous informer que j'ai trouvé.
En vrai, il ne faut pas installer de version supplémentaire de python, c'est inutile. Le mieux, si certains souhaite ne pas avoir le même problème (j'ai trouvé sur plusieurs autres forums, des similitudes).
-> Installer QGis par OSGeo4w, version desktop ou autre. Toutes les dépendances seront prises.
-> Après analyse (et échanges avec une équipe au Quebec), il est préférable, d'utiliser la version de python offerte. Ça, c'est un avis de développeur. Pour la raison simple que l'écosystème est mis en place, et donc moins de source de conflits (et facilite les évolutions).
-> Préparer un bash, qui fera appel :
Code:
@echo off SET OSGEO4W_ROOT=C:OSGeo4W64 call "%OSGEO4W_ROOT%bino4w_env.bat" call qt5_env.bat call py3_env.bat @echo off path %OSGEO4W_ROOT%appsqgisbin;%PATH% set QGIS_PREFIX_PATH=%OSGEO4W_ROOT:=/%/apps/qgis set GDAL_FILENAME_IS_UTF8=YES rem Set VSI cache to be used as buffer, see #6448 set VSI_CACHE=TRUE set VSI_CACHE_SIZE=1000000 set QT_PLUGIN_PATH=%OSGEO4W_ROOT%appsqgisqtplugins;%OSGEO4W_ROOT%appsqt5plugins set PYTHONPATH=%OSGEO4W_ROOT%appsqgispython;%PYTHONPATH% python3 main_script.py
En gros, pour expliquer, ca prépare tout l'environnement nécessaire, appel les bash existants. Surtout, bien lancer son script avec python3. A adapter les dernières variables si c'est nécessaire selon votre environnement.
Bonne journée.
Hors ligne