使用enigma virtual box打包Qt程序提示未包含Qt5Core.dll
今天使用上述软件将一个Qt程序打包之后在本地运行正常,但是在朋友电脑中运行提示未包含Qt5Core.dll库
解决方法:
首先确认自己使用windeployqt.exe打包后的程序,朋友的电脑运行提示缺少以上三个库:
- libgcc_s_seh-1.dll
- libstdc++ -6.dll
- libwinpthread-1.dll
根据缺少的库文件到Qt的安装路径下拷贝出指定的库文件,例如:D:\Qt\Qt5.12.10\5.12.10\mingw73_64\bin
将其拷贝到所需打包的exe文件的同一文件夹下,再将相应的文件添加到enigma virtual box的依赖文件,再次打包生成exe之后,程序正常运行
但是为何使用windeployqt.exe复制的库文件仍然会有库文件缺失的问题?
通过分析其缺少的库文件名感觉是这三个库是c++和gcc的编译所需的库,而pthread很明显是多线程所需的依赖库,可能是本身就需要手动拷贝的吧,希望有识之士看到之后能够指点一二