😇

【Python】pyenv-win+venvで環境構築したときPyQt5でエラーが出る問題

2022/11/22に公開

環境

Windows10
Python3.10.1
pyenv + venvで仮想環境を構築し,PyQt5によるGUIアプリを実行しようとした

エラー

<仮想環境名>/Scripts/Activate.ps1

で仮想環境に入り,

python main.py

で実行しようとしたところ以下のエラーが出た.

qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

pythonのグローバル環境やpyenvのローカル環境では同様の問題は発生せず,普通に起動できる.

原因

フォルダパスに日本語が入っていたこと.日本語を含まない別のフォルダにcloneしたところ普通に実行できた.
ちなみに,フォルダパスに半角スペースが入っていてもやっぱり問題なく実行できた.

解決が難航した理由

VSCode内蔵のシェルでは,Python拡張機能のおかげで直にpythonコマンドを打ってもvenvで実行できていた.この場合はエラーが出なかったため,マニュアル作成のために別ウィンドウのPowershellで実行するまで気づけなかった.

知見

開発をするときに日本語フォルダ名を使うのは,一見問題なさそうでもロクなことにならないのでマジでやめたほうがいい

Discussion