No Win10 64 bits instalei PyQt5_5.4.1 para Python3.4.3. Preciso do 3.4.3 para oferecer suporte a clientes XP e esta é a última versão que pode ser instalada no XP. PyQt5 se instalou na pasta python3.4.3 C:\Python34
e posso vê-lo em PATHC:\Python34\Lib\site-packages\PyQt5
Quando executo meu script com python myscript.py
tudo bem, a janela da GUI é exibida. No entanto, quando tento executar um arquivo .exe daquele script criado pyinstaller
assim, pyinstaller myscript.py --onefile
recebo um erro:
Qt: Untested Windows version 10.0 detected!
This application failed to start because it
could not find or load the Qt platform plugin "windows".
Reinstalling the application may fix this problem.
Este código que tenho em myscript.py:
from PyQt5 import QtWidgets, QtCore, QtGui
Existe uma solução para este problema? Tentei reinstalar o PyQt5, mas sem sorte.
Responder1
Crie um arquivo hook no diretório do seu projeto. Digagancho-PyQt5.pypor exemplo:
from PyInstaller.utils.hooks import qt_plugins_binaries
# Fixed the issue: could not find or load the Qt platform plugin "windows".
binaries = qt_plugins_binaries('platforms', 'PyQt5')
No arquivo de especificação do Pyinstaller, adicione um parâmetro
hookspath=['./']
para o objeto de análise:
a = Analysis(
...
hookspath=['./'],
...
)
ou especifique um argumento "--additional-hooks-dir" para a linha de comando se você usar o PyInstaller diretamente.
python -m PyInstaller --additional-hooks-dir="./" <your-script>