qtsdk1.2.1 静态编译

1.安装

2.打开X:\Qt\4.8.0\mkspecs\win32-g++\qmake.conf (X为QT安装盘符)

  在QMAKE_LFLAGS后面加上 -static

  并将QMAKE_LFLAGS_DLL后面的 -shared 改为 -static

  保存并关闭

3.将X:\Qt\4.8.0\bin 下的syncqt与syncqt.bat 这两个文件删除或改名

否则在编译时会提示找不到perl环境

---------------------------------------------------------------------------------------------

1  首先在开始菜单打来 Qt Command Prompt ,

2  执行命令 configure -release -static -fast
3  执行命令  mingw32-make

4  执行命令  mingw32-make clean

    以 上步骤是编译qt静态库的过程,摘自网友lsyer的博客,现在在Qt\2009.03\qt\lib 目录下,会生成一些后缀名为.a的静态库文件, 接下来再次编译自己的应用程序, 这时报错,错误信息提示找不到 QtGuid 和 QtCored,这时把Qt\2009.03\qt\lib目录下对应的libQtGuid4.a 和 libQtCored4.a改为libQtGuid.a 和 libQtCored.a 也可以另复制出一份,再改名。

    接下来,编译自己的应用程序通过, 但执行应用程序hello.exe的时候,依然提示找不到qt的库,后来发现编译的是debug版本,只要打开左边的Projects栏,勾选里面的 Release,再次编译,就会在Release目录下生成可执行文件,现在只要把C:\Qt\2009.03\mingw\bin目录下的 mingwm10.dll拷贝到Release目录下和可执行程序放在一起,现在程序就可以正常执行了,不会再提示找不到qt的库了。



原文地址:https://www.cnblogs.com/gxh973121/p/2645650.html