使用vs的命令行工具静态编译Qt4.8.5

一、下载Qt4.8.5的源码:

下载地址http://iso.mirrors.ustc.edu.cn/qtproject/archive/qt/4.8/4.8.5/qt-everywhere-opensource-src-4.8.5.zip

二、解压Qt源码将其放在合适的目录下 **

三、安装你想要使用的vs的版本(确保Qt能被编译为相应的能在vs中使用的版本)

四、修改源码中的文件

a.删除源码包中bin目录下的syncqt和syncqt.dat文件,如你不放心可将其改名或剪切到别的位置。如不修改将发生 Perl not found in environment - cannot run syncqt 错误。

b. 修改\mkspecs\win32-msvc2008下的qmake.conf文件,将其中的QMAKE_CFLAGS=-nologo -Zm200 -Zc:wchar_t-改成QMAKE_CFLAGS=-nologo -Zm200 -Zc:wchar_t注意末尾的”-“号区别。如不修改将来如有项目使用wchar_t,qt却编译成wchar_t-,编译会导致连接错误,提示找不到Qwstring;QMAKE_CFLAGS_RELEASE,QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO,QMAKE_CFLAGS_DEBUG这3处后面的MD,MDd对应改成MT,MTD,以实现在没有VC库的电脑也能运行Qt程序。 

c.修改src\3rdparty\webkit\Source\WebCore\platform下的DefaultLocalizationStrategy.cpp,定位到327行,将本行替换成return WEB_UI_STRING("Look Up """, "Look Up context menu item with selected word").replace("", truncatedStringForLookupMenuItem(selectedString));(由于word自动排版问题,请各位直接将以上英文部分一次性全复制,其实它们是一行,不要分行复制)。如不修改将出现编译Webkit 时会出现 U1077错误。 

五、打开vs的命令行工具,切换到Qt的源码目录输入如下命令:

Vs2005的命令如下:configure -debug-and-release -fast -static -platform win32-msvc2005 -no-qt3support -no-script -no-scripttools -qt-zlib -qt-libpng -qt-libmng -qt-libtiff -qt-libjpeg -qt-sql-sqlite -plugin-sql-sqlite -qt-style-windows -qt-style-windowsxp -qt-style-windowsvista -qt-style-plastique -qt-style-cleanlooks -qt-style-motif -qt-style-cde

Vs2010的命令:configure -debug-and-release -fast -static -platform win32-msvc2010 -no-qt3support -script -scripttools -qt-zlib -qt-libpng -qt-libmng -qt-libtiff -qt-libjpeg -qt-sql-sqlite -plugin-sql-sqlite -qt-style-windows -qt-style-windowsxp -qt-style-windowsvista -qt-style-plastique -qt-style-cleanlooks -qt-style-motif -qt-style-cde -nomake demos -nomake examples -nomake docs –mp

六、上述步骤如都没有问题输入nmake等待编译结束安装addin即可在vs中使用Qt

注:百度网盘有我编译过的版本(使用的是vs2010编译的静态版本)

https://pan.baidu.com/s/1fQAexCdjZfPjA2FrVNm41Q pamq

猜你喜欢

转载自blog.csdn.net/qq_34511364/article/details/86299494