Tentei transpor o processo QGIS 2 sem sucesso.
Primeiro tive que editar C: \ Arquivos de programas \ QGIS 2.99 \ etc \ ini \ python-core.bat, que contém referências ao Python27 em vez do Python36.
Executo C: \ Arquivos de Programas \ QGIS 2.99 \ bin \ o4w_env.bat para configurar corretamente o ambiente python do QGIS, mas quando inicio:
"C:\Program Files\QGIS 2.99\apps\Python36\Scripts\pyuic5.bat" -o dockwidget_base.py dockwidget_base.ui
Eu recebo este erro:
Traceback (most recent call last):
File "C:\PROGRA~1\QGIS2~1.99\apps\Python36\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "C:\PROGRA~1\QGIS2~1.99\apps\Python36\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\PROGRA~1\QGIS2~1.99\apps\Python36\lib\site-packages\PyQt5\uic\pyuic.py", line 26, in <module>
from PyQt5 import QtCore
ImportError: DLL load failed: Specified module could not be found.
Da mesma forma, quando eu lanço:
"C:\Program Files\QGIS 2.99\apps\Python36\Scripts\pyrcc5.bat" -o resources_rc.py resources.qrc
Eu recebo este erro:
Traceback (most recent call last):
File "C:\PROGRA~1\QGIS2~1.99\apps\Python36\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "C:\PROGRA~1\QGIS2~1.99\apps\Python36\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\PROGRA~1\QGIS2~1.99\apps\Python36\lib\site-packages\PyQt5\pyrcc_main.py", line 21, in <module>
from PyQt5.QtCore import PYQT_VERSION_STR, QDir, QFile
ImportError: DLL load failed: Specified module could not be found.
fonte
call pyuic5 --import-from <package-name>.gui.generated
. Precisa colocar o caminho para o seu arquivo de recursos e compilar novamente.call pyuic5 dockwidget_base.ui --from-imports -o dockwidget_base.py
. Funciona perfeitamente.Depois de descobrir tudo sobre as variáveis de ambiente e saber o que estava procurando, encontrei o arquivo /osgeo4w_root/bin/python-qgis-dev.bat
Quando chamado a partir do shell osgeo4w ativo, ele define todo o ambiente. chamando os arquivos .bat correspondentes (como sugerido por Francisco)!
fonte