[转载]QT+MinGW在windows中静态编译程序
首先,要保证QT是静态编译版本。一般我们用的QT都不是静态编译的,需要我们重新编译。在开始菜单里打开"Qt 4.x.x Command Prompt",这时默认是在QT目录里面,分别运行如下命令:
configure -release -static -fast
make
make clean
最后一部其实也算可有可无,第二步在我的电脑上运行了将近3个小时,慢慢等就是。 这样就生成了QT的静态编译版本,我们的程序编译时会自动把QT相关的依赖包含进去。
其次,解决MinGW的mingwm10.dll依赖问题。一般只有用到threads的时候才用到mingwm10.dll,我们通常遇到的"缺少 mingwm10.dll"问题,可以在程序qmake生成makefile.release文件后删除"-mthreads"参数即可,一般在 "LFLAGS"后面。当然,这只是临时解决方案,每次都要手动修改,也可以在编译QT前先修改qmake.h,不过不推荐这种方法。其实, mingwm10.dll也就十多K,每次发布程序时一起打包也无所谓。