qt-- 学习笔记11(mingw编译,windeployqt生成执行文件exe,同一exe文件不同文件夹结果不同)
在exe所在文件夹执行打包过程,打包完成,exe运行报错
// 在exe所在文件夹执行打包过程,打包完成,exe运行报错
C:\Users\1\Desktop\1234>D:\Qt\Qt5.15.2\5.15.2\mingw81_64\bin\windeployqt.exe ChartZoomMove.exe
C:\Users\1\Desktop\1234\ChartZoomMove.exe 64 bit, release executable
Adding Qt5Svg for qsvgicon.dll
Direct dependencies: Qt5Core Qt5Gui Qt5Widgets
All dependencies : Qt5Core Qt5Gui Qt5Widgets
To be deployed : Qt5Core Qt5Gui Qt5Svg Qt5Widgets
Updating Qt5Charts.dll.
Updating Qt5Core.dll.
Updating Qt5Gui.dll.
Updating Qt5Svg.dll.
Updating Qt5Widgets.dll.
Updating libGLESv2.dll.
Updating libEGL.dll.
Updating D3Dcompiler_47.dll.
Updating opengl32sw.dll.
Updating libgcc_s_seh-1.dll.
Updating libstdc++-6.dll.
Updating libwinpthread-1.dll.
Creating directory C:/Users/1/Desktop/1234/iconengines.
Updating qsvgicon.dll.
Updating qsvgicond.dll.
Creating directory C:/Users/1/Desktop/1234/imageformats.
Updating qgif.dll.
Updating qgifd.dll.
Updating qicns.dll.
Updating qicnsd.dll.
Updating qico.dll.
Updating qicod.dll.
Updating qjpeg.dll.
Updating qjpegd.dll.
Updating qsvg.dll.
Updating qsvgd.dll.
Updating qtga.dll.
Updating qtgad.dll.
Updating qtiff.dll.
Updating qtiffd.dll.
Updating qwbmp.dll.
Updating qwbmpd.dll.
Updating qwebp.dll.
Updating qwebpd.dll.
Creating directory C:/Users/1/Desktop/1234/platforms.
Updating qwindows.dll.
Creating directory C:/Users/1/Desktop/1234/styles.
Updating qwindowsvistastyle.dll.
Updating qwindowsvistastyled.dll.
Creating C:\Users\1\Desktop\1234\translations...
Creating qt_ar.qm...
Creating qt_bg.qm...
Creating qt_ca.qm...
Creating qt_cs.qm...
Creating qt_da.qm...
Creating qt_de.qm...
Creating qt_en.qm...
Creating qt_es.qm...
Creating qt_fi.qm...
Creating qt_fr.qm...
Creating qt_gd.qm...
Creating qt_he.qm...
Creating qt_hu.qm...
Creating qt_it.qm...
Creating qt_ja.qm...
Creating qt_ko.qm...
Creating qt_lv.qm...
Creating qt_pl.qm...
Creating qt_ru.qm...
Creating qt_sk.qm...
Creating qt_tr.qm...
Creating qt_uk.qm...
Creating qt_zh_TW.qm...C:\Users\1\Desktop\1234>C:\Users\1\Desktop\1234>d:
报错:如图:
在windeployqt文件夹执行打包过程,打包完成,exe可以运行
// 在windeployqt文件夹执行打包过程,打包完成,exe可以运行
D:\Qt\Qt5.15.2\5.15.2\mingw81_64\bin>windeployqt.exe C:\Users\1\Desktop\5678\ChartZoomMove.exe
C:\Users\1\Desktop\5678\ChartZoomMove.exe 64 bit, release executable
Adding Qt5Svg for qsvgicon.dll
Direct dependencies: Qt5Core Qt5Gui Qt5Widgets
All dependencies : Qt5Core Qt5Gui Qt5Widgets
To be deployed : Qt5Core Qt5Gui Qt5Svg Qt5Widgets
Updating Qt5Charts.dll.
Updating Qt5Core.dll.
Updating Qt5Gui.dll.
Updating Qt5Svg.dll.
Updating Qt5Widgets.dll.
Updating libGLESv2.dll.
Updating libEGL.dll.
Updating D3Dcompiler_47.dll.
Updating opengl32sw.dll.
Updating libgcc_s_seh-1.dll.
Updating libstdc++-6.dll.
Updating libwinpthread-1.dll.
Creating directory C:/Users/1/Desktop/5678/iconengines.
Updating qsvgicon.dll.
Creating directory C:/Users/1/Desktop/5678/imageformats.
Updating qgif.dll.
Updating qicns.dll.
Updating qico.dll.
Updating qjpeg.dll.
Updating qsvg.dll.
Updating qtga.dll.
Updating qtiff.dll.
Updating qwbmp.dll.
Updating qwebp.dll.
Creating directory C:/Users/1/Desktop/5678/platforms.
Updating qwindows.dll.
Creating directory C:/Users/1/Desktop/5678/styles.
Updating qwindowsvistastyle.dll.
Creating C:\Users\1\Desktop\5678\translations...
Creating qt_ar.qm...
Creating qt_bg.qm...
Creating qt_ca.qm...
Creating qt_cs.qm...
Creating qt_da.qm...
Creating qt_de.qm...
Creating qt_en.qm...
Creating qt_es.qm...
Creating qt_fi.qm...
Creating qt_fr.qm...
Creating qt_gd.qm...
Creating qt_he.qm...
Creating qt_hu.qm...
Creating qt_it.qm...
Creating qt_ja.qm...
Creating qt_ko.qm...
Creating qt_lv.qm...
Creating qt_pl.qm...
Creating qt_ru.qm...
Creating qt_sk.qm...
Creating qt_tr.qm...
Creating qt_uk.qm...
Creating qt_zh_TW.qm...D:\Qt\Qt5.15.2\5.15.2\mingw81_64\bin>
需要到windeployqt.exe所在文件夹,才正常的问题,msvc不存在,直接切换到exe所在文件夹C:\Users\1\Desktop\1234,使用D:\Qt\Qt5.15.2\5.15.2\msvc2019_64\bin\windeployqt.exe ChartZoomMove.exe 一样可以得到正常的exe文件。
环境变量问题:
使用msvc编译得到的exe文件,把对应的路径D:\Qt\Qt5.15.2\5.15.2\msvc2019_64\bin添加到 环境变量的 系统变量==path路径,可以打包得到运行的exe文件;
mingw编译器添加环境变量不添加都可以,不过具体为什么不知道原因,有时间再试了。