En Win10 de 64 bits instalé PyQt5_5.4.1 para Python3.4.3. Necesito la 3.4.3 para admitir clientes XP y esta es la última versión que se puede instalar en XP. PyQt5 se instaló en la carpeta python3.4.3 C:\Python34
y puedo verlo en PATHC:\Python34\Lib\site-packages\PyQt5
Cuando ejecuto mi script y python myscript.py
todo está bien, se muestra la ventana GUI. Sin embargo, cuando intento ejecutar un archivo .exe desde ese script creado pyinstaller
así, pyinstaller myscript.py --onefile
aparece un error:
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 lo tengo en myscript.py:
from PyQt5 import QtWidgets, QtCore, QtGui
¿Hay alguna solución para este problema? Intenté reinstalar PyQt5 pero no tuve suerte.
Respuesta1
Cree un archivo de enlace en el directorio de su proyecto. Nombralogancho-PyQt5.pyPor ejemplo:
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')
En el archivo de especificaciones de Pyinstaller, agregue un parámetro
ruta de gancho=['./']
al objeto de análisis:
a = Analysis(
...
hookspath=['./'],
...
)
o especifique un argumento "--additional-hooks-dir" para la línea de comando si usa PyInstaller directamente.
python -m PyInstaller --additional-hooks-dir="./" <your-script>