QT MSVC编译项目打包
1. 先 windeployqt 打包
第一步打包会将项目用到的QT库全部复制到exe所在目录。
当将打包后的文件夹放到刚装系统的电脑时运行,会提示缺少MSVCP140.dll等dll文件。这是因为编译器用的是微软的,所以还要拷贝VS相关库到exe目录下。
2. 拷贝MSVCP140.dll等dll文件。
该文件位置在QT中的编译器配置路径下查找,不是C:\Windows\System32路径,因为C:\Windows\System32下的MSVCP140.dll会重定向,比如将MSVCP140.dll拷贝到桌面后用depends.exe查看,该dll会变成64位的,但是在System32下查看是32位。
如 我的编译器是MSVC2017_x86,所以路径查看如下:
- 查看项目使用的编译器
- 查看编译器配置路径
- MSVCP140.dll相关库所在路径:E:\VS2017\VC\Tools\MSVC\14.16.27023\bin\Hostx86\x86