一、打包运行问题
用PyQt5开发的界面,用 pyinstaller 打包成的 exe 运行时崩溃,提示如下错误信息:
Could not find QtWebEngineProcess.exe
提示这个错误,是因为 QtWebEngineProcess.exe 没找到,网上说配置下QT的环境变量,试了并没有卵用,于是我就去python目录下,搜索了下这个文件,直接把他复制到 exe 同级目录,python路径要看你实际用的哪个环境路径。
搜索到结果如下,右键打开该文件的目录。
将该目录下的所有文件,复制到打包好的 exe 同级下,一定是全部文件,否在会报其他文件找不到。
接下里报了如下这个错误,同样也是文件找不到导致的。
[0320/105629.674:ERROR:icu_util.cc(251)] Couldn't mmap icu data file
找到 Python\Python39\Lib\site-packages\PyQt5\Qt5\resources 目录下的文件,同样也可以搜 icudtl.dat 在哪个目录, 全部拷贝到 exe 同级目录下。
二、总结
主要原因是,pyinstaller 打包工具会忽略Qt5的路径问题,打包文件中是有这些问题的,我猜测 pyinstaller 应该可以设置这些路径问题,待研究实践。
还有自己项目用的资源文件,打包后也是没有的,也可以手动拷贝下文件到 exe 目录。
注:路径根据自己实际QT的安装路径来。
网上有说,QTWEBENGINEPROCESS_PATH,值为QtWebEngineProcess.exe的路径 我这没有试成功。