PyQt5 + Pyinstaller + Python2.x GUIアプリのビルド
##実行環境
- windows
- anaconda 2.x
- pyinstaller
##エラー
pyqt5を利用して作成したファイルをpyinstallerの以下のコマンドを利用して実行します。
pyinstaller {YOUR_SRIPTNAME}.py --onefile --noconsole -p "C:\Users\{YOUR_USERNAME}\Anaconda2\lib\site-packages\PyQt5\plugins\platforms"
ビルドされたexeファイルを実行しようとすると。。
This application failed to start because it could not find or load the Qt platform plugin "windows"
in "".
上記のエラーが出て動かない。。。なんでや。。。
##解決策
とりあえず必要なdllをexeと同じフォルダに入れることで解決しました。
-
\platforms
をexeの入ったフォルダの/dist
以下にコピーする。 -
C:\Users\{YOUR_USERNAME}\Anaconda2\lib\site-packages\PyQt5
内のlibEGL.dllを/dist
以下にコピーする。
exeにしたものの実行できなくて困っている方の参考になれば。
##参考
https://qiita.com/kanjirz50/items/930e9056076d04eecaec
https://stackoverflow.com/questions/17695027/pyqt5-failed-to-load-platform-plugin-windows-available-platforms-are-windo