| http://www.kavenblog.com/?p=375 1、Qt的跨平台十分优秀,但是在Windows上是还是会有许多问题,其中之一就是动态链接库的问题,Qt程序的发布必须带一个体积不小的DLL库,这十分不方便。当然,如果是程序员之间会比较方便,如果别人的机子也安装了Qt,并且设置了环境变量,那么也可以不将公共的DLL附在发布的程序中。但是,这样显然还是不方便。 2、静态链接库很好的解决了这一个问题,下面就来详细叙述如何编译Qt5.4.0的静态库。 3、参考链接:http://blog.csdn.net/wwkaven/article/details/37668859 4、下载Qt源码:  下载地址:http://111.11.184.43/mirrors.ustc.edu.cn/qtproject/archive/qt/5.4/5.4.0/single/qt-everywhere-opensource-src-5.4.0.zip 5、安装Python https://www.python.org/downloads/ https://www.python.org/ftp/python/3.4.3/python-3.4.3.msi ![clipboard[1]](/https://i-blog.csdnimg.cn/blog_migrate/e5b0dd54a5ff81521ed1bbd1979d7917.png) ![clipboard[2]](/https://i-blog.csdnimg.cn/blog_migrate/40deaa44f4a8e39798cea1c7adc905d6.png) ![clipboard[3]](/https://i-blog.csdnimg.cn/blog_migrate/baee15a0eb172f29966a686f639b01e7.png) ![clipboard[4]](/https://i-blog.csdnimg.cn/blog_migrate/1995ff49ee920f05cf161ee761c6d1ee.png) ![clipboard[5]](/https://i-blog.csdnimg.cn/blog_migrate/3589984929becb3e5be9aa13e26d07bf.png) ![clipboard[6]](/https://i-blog.csdnimg.cn/blog_migrate/c509345697efe492b12b54dcc0bd3b75.png) ![clipboard[7]](/https://i-blog.csdnimg.cn/blog_migrate/ecb4920f5bd113735e2fdf7d44fa6654.png) ![clipboard[8]](/https://i-blog.csdnimg.cn/blog_migrate/f6374faff00816ecf58da96dea6abba0.png) ![clipboard[9]](/https://i-blog.csdnimg.cn/blog_migrate/44cf0291a650235531da4c2580b089a3.png) 6、解压Qt源码: ![clipboard[10]](/https://i-blog.csdnimg.cn/blog_migrate/7ee9553be143c7a444250ca8cb8ef51a.png) ![clipboard[11]](/https://i-blog.csdnimg.cn/blog_migrate/8eb84f860a9769e014e959e4e1c15b0d.png) 7、进入这个文件夹:qt-everywhere-opensource-src-5.4.0\qtbase\mkspecs ![clipboard[12]](/https://i-blog.csdnimg.cn/blog_migrate/98cd2b184b93526a47653702d7e5dd14.png) 8、进入这个文件夹:qt-everywhere-opensource-src-5.4.0\qtbase\mkspecs\win32-msvc2010,里面有两个文件: ![clipboard[13]](/https://i-blog.csdnimg.cn/blog_migrate/baa7f2da8d3ed5c64f404c9ced02f0cb.png) 9、打开qmake.conf,修改内容并保存,如下: 原始内容如下(注意红色部分): # # qmake configuration for win32-msvc2010 # # Written for Microsoft Visual C++ 2010 # MAKEFILE_GENERATOR = MSBUILD QMAKE_PLATFORM = win32 CONFIG += incremental flat precompile_header autogen_precompile_source debug_and_release debug_and_release_target embed_manifest_dll embed_manifest_exe DEFINES += UNICODE WIN32 MSVC_VER = 10.0 QMAKE_COMPILER_DEFINES += _MSC_VER=1600 _WIN32 contains(QMAKE_TARGET.arch, x86_64) { DEFINES += WIN64 QMAKE_COMPILER_DEFINES += _WIN64 } QMAKE_COMPILER = msvc QMAKE_CC = cl QMAKE_LEX = flex QMAKE_LEXFLAGS = QMAKE_YACC = byacc QMAKE_YACCFLAGS = -d QMAKE_CFLAGS = -nologo -Zm200 -Zc:wchar_t QMAKE_CFLAGS_WARN_ON = -W3 QMAKE_CFLAGS_WARN_OFF = -W0 QMAKE_CFLAGS_RELEASE = -O2 -MD QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi QMAKE_CFLAGS_DEBUG = -Zi -MDd QMAKE_CFLAGS_YACC = QMAKE_CFLAGS_LTCG = -GL QMAKE_CFLAGS_MP = -MP QMAKE_CFLAGS_SSE2 = -arch:SSE2 QMAKE_CFLAGS_SSE3 = -arch:SSE2 QMAKE_CFLAGS_SSSE3 = -arch:SSE2 QMAKE_CFLAGS_SSE4_1 = -arch:SSE2 QMAKE_CFLAGS_SSE4_2 = -arch:SSE2 QMAKE_CFLAGS_AVX = -arch:AVX QMAKE_CFLAGS_AVX2 = -arch:AVX QMAKE_CXX = $$QMAKE_CC QMAKE_CXXFLAGS = $$QMAKE_CFLAGS QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON -w34100 -w34189 QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC QMAKE_CXXFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG QMAKE_CXXFLAGS_MP = $$QMAKE_CFLAGS_MP QMAKE_CXXFLAGS_STL_ON = -EHsc QMAKE_CXXFLAGS_STL_OFF = QMAKE_CXXFLAGS_RTTI_ON = -GR QMAKE_CXXFLAGS_RTTI_OFF = QMAKE_CXXFLAGS_EXCEPTIONS_ON = -EHsc QMAKE_CXXFLAGS_EXCEPTIONS_OFF = QMAKE_INCDIR = QMAKE_RUN_CC = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$obj $src QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$@ $< QMAKE_RUN_CC_IMP_BATCH = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$@ @<< QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$obj $src QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$@ $< QMAKE_RUN_CXX_IMP_BATCH = $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo$@ @<< QMAKE_LINK = link QMAKE_LFLAGS = /NOLOGO /DYNAMICBASE /NXCOMPAT QMAKE_LFLAGS_RELEASE = /INCREMENTAL:NO QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO = /DEBUG /OPT:REF /INCREMENTAL:NO QMAKE_LFLAGS_DEBUG = /DEBUG QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:CONSOLE QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS QMAKE_LFLAGS_EXE = \"/MANIFESTDEPENDENCY:type=\’win32\’ name=\’Microsoft.Windows.Common-Controls\’ version=\’6.0.0.0\’ publicKeyToken=\’6595b64144ccf1df\’ language=\’*\’ processorArchitecture=\’*\’\" QMAKE_LFLAGS_DLL = /DLL QMAKE_LFLAGS_LTCG = /LTCG QMAKE_EXTENSION_STATICLIB = lib QMAKE_LIBS_CORE = kernel32.lib user32.lib shell32.lib uuid.lib ole32.lib advapi32.lib ws2_32.lib QMAKE_LIBS_GUI = gdi32.lib comdlg32.lib oleaut32.lib imm32.lib winmm.lib ws2_32.lib ole32.lib user32.lib advapi32.lib QMAKE_LIBS_NETWORK = ws2_32.lib QMAKE_LIBS_OPENGL = glu32.lib opengl32.lib gdi32.lib user32.lib QMAKE_LIBS_OPENGL_ES2 = libEGL.lib libGLESv2.lib gdi32.lib user32.lib QMAKE_LIBS_OPENGL_ES2_DEBUG = libEGLd.lib libGLESv2d.lib gdi32.lib user32.lib QMAKE_LIBS_COMPAT = advapi32.lib shell32.lib comdlg32.lib user32.lib gdi32.lib ws2_32.lib QMAKE_LIBS_QT_ENTRY = -lqtmain QMAKE_IDL = midl QMAKE_LIB = lib /NOLOGO QMAKE_RC = rc include(../common/shell-win32.conf) VCPROJ_EXTENSION = .vcxproj VCSOLUTION_EXTENSION = .sln VCPROJ_KEYWORD = Qt4VSv1.0 load(qt_config) 修改红色部分,将MD(动态)改为MT(静态) QMAKE_CFLAGS_RELEASE = -O2 -MD QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi QMAKE_CFLAGS_DEBUG = -Zi -MDd 改为 QMAKE_CFLAGS_RELEASE = -O2 -MT QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi QMAKE_CFLAGS_DEBUG = -Zi -MTd 保存文件 10、以管理员身份打开VS2010的命令提示工具: ![clipboard[14]](/https://i-blog.csdnimg.cn/blog_migrate/7cd3d0fb0ef1764459612e79a821a379.png) ![clipboard[15]](/https://i-blog.csdnimg.cn/blog_migrate/b8aed339c5077dcb01cacd2e7325b886.png) 输入python,查看Python的状态: ![clipboard[16]](/https://i-blog.csdnimg.cn/blog_migrate/1f2ce22069963e535f806d419ad0bb66.png) 如果是这样,需要设动设置Python的环境变量: ![clipboard[17]](/https://i-blog.csdnimg.cn/blog_migrate/08b4f036b509141e7666c9591e1240b7.png) set PATH=%PATH%;C:\Python34 按下“Ctrl+z”,再回车,退出Python ![clipboard[18]](/https://i-blog.csdnimg.cn/blog_migrate/e9377df99bdee63bf2d856092863194d.png) CD至Qt源码的解压目录: ![clipboard[19]](/https://i-blog.csdnimg.cn/blog_migrate/689ca529ee42ee4e6908d0f9190bc91f.png) 11、关键步骤,Configure 输入: configure -mp -confirm-license -opensource -platform win32-msvc2010 -debug-and-release -static -prefix "D:\QT_Static\qt-static-5.4.0" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples -skip qtwebkit ![clipboard[20]](/https://i-blog.csdnimg.cn/blog_migrate/3ad4a034631d999f00f5a39e5a41b700.png) 回车: ![clipboard[21]](/https://i-blog.csdnimg.cn/blog_migrate/1ff60459c6f704b98e1137a738d83326.png) 一会之后: ![clipboard[22]](/https://i-blog.csdnimg.cn/blog_migrate/eb310783420973d44552bbef6b995141.png) 12、执行nmake ![clipboard[23]](/https://i-blog.csdnimg.cn/blog_migrate/95304b8c7fcb8693f7001d38c98ba527.png) 回车 ![clipboard[24]](/https://i-blog.csdnimg.cn/blog_migrate/ed3a534b229bbee082aa54cce602caa2.png) 接下去就是漫长的编译过程了, 等待中。。。。。。 ![clipboard[25]](/https://i-blog.csdnimg.cn/blog_migrate/998263702866a83056bacb7a53b4a41f.png) 编译完成 ![clipboard[26]](/https://i-blog.csdnimg.cn/blog_migrate/591527e9f59e919c5b494b88b3d8a810.png) 编译完后的文件夹大小: ![clipboard[27]](/https://i-blog.csdnimg.cn/blog_migrate/448daf47566626da325a592a4a264d1e.png) 13、执行nmake install ![clipboard[28]](/https://i-blog.csdnimg.cn/blog_migrate/6e74b1bbc6acae51d8ae1d0724e396b8.png) 完成 ![clipboard[29]](/https://i-blog.csdnimg.cn/blog_migrate/f0cfdeece4a5fc9213056004aaee607b.png) 安装目录: ![clipboard[30]](/https://i-blog.csdnimg.cn/blog_migrate/9a4fa4aecef6bdb14d04f45abe6bf0b4.png) ![clipboard[31]](/https://i-blog.csdnimg.cn/blog_migrate/52ed6f11010be7dbc41ee2efff03de8b.png) 14、配置静态库 ![clipboard[32]](/https://i-blog.csdnimg.cn/blog_migrate/8676638e614869dd6550543415a6afa7.png) ![clipboard[33]](/https://i-blog.csdnimg.cn/blog_migrate/97ed1381050c77e77916be41dfe1d7c6.png) ![clipboard[34]](/https://i-blog.csdnimg.cn/blog_migrate/b4a327157265e9d4ca5cf522b03a9c35.png) ![clipboard[35]](/https://i-blog.csdnimg.cn/blog_migrate/7cf86e19098800c479d55f3e6c348b83.png) ![clipboard[36]](/https://i-blog.csdnimg.cn/blog_migrate/f09976ec24e1518014e6d9e656a85f9c.png) ![clipboard[37]](/https://i-blog.csdnimg.cn/blog_migrate/e21592ba204ace2e8d0ac7486e1f369e.png) 发现有一个警告,暂时忽略: ![clipboard[38]](/https://i-blog.csdnimg.cn/blog_migrate/9bad3cd12abba18523892042442a6e5c.png) 15、创建测试项目 选择静态编译器: ![clipboard[39]](/https://i-blog.csdnimg.cn/blog_migrate/4b9136fb6faaf546e900ee8cbec1faf0.png) 以下是编译输出: 13:44:17: 为项目StaticTest执行步骤 … 13:44:17: 正在启动 "D:\QT_Static\qt-static-5.4.0\bin\qmake.exe" D:\Documents\QT\StaticTest\StaticTest.pro -r -spec win32-msvc2010 13:44:18: 进程"D:\QT_Static\qt-static-5.4.0\bin\qmake.exe"正常退出。 13:44:18: 正在启动 "C:\Qt\Qt5.4.0\Tools\QtCreator\bin\jom.exe" C:\Qt\Qt5.4.0\Tools\QtCreator\bin\jom.exe -f Makefile.Debug D:\QT_Static\qt-static-5.4.0\bin\uic.exe ..\StaticTest\dialog.ui -o ui_dialog.h cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MTd -GR -W3 -w34100 -w34189 -EHsc /Fddebug\StaticTest.pdb -DUNICODE -DWIN32 -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I"..\..\..\QT_Static\qt-static-5.4.0\include" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtWidgets" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtGui" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\QT_Static\qt-static-5.4.0\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\Kaven\AppData\Local\Temp\main.obj.9692.0.jom main.cpp cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MTd -GR -W3 -w34100 -w34189 -EHsc /Fddebug\StaticTest.pdb -DUNICODE -DWIN32 -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I"..\..\..\QT_Static\qt-static-5.4.0\include" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtWidgets" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtGui" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\QT_Static\qt-static-5.4.0\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\Kaven\AppData\Local\Temp\statictest_plugin_import.obj.9692.15.jom statictest_plugin_import.cpp D:\QT_Static\qt-static-5.4.0\bin\moc.exe -DUNICODE -DWIN32 -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -D_MSC_VER=1600 -D_WIN32 -ID:/QT_Static/qt-static-5.4.0/mkspecs/win32-msvc2010 -ID:/Documents/QT/StaticTest -ID:/QT_Static/qt-static-5.4.0/include -ID:/QT_Static/qt-static-5.4.0/include/QtWidgets -ID:/QT_Static/qt-static-5.4.0/include/QtGui -ID:/QT_Static/qt-static-5.4.0/include/QtCore -I. ..\StaticTest\dialog.h -o debug\moc_dialog.cpp cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MTd -GR -W3 -w34100 -w34189 -EHsc /Fddebug\StaticTest.pdb -DUNICODE -DWIN32 -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I"..\..\..\QT_Static\qt-static-5.4.0\include" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtWidgets" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtGui" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\QT_Static\qt-static-5.4.0\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\Kaven\AppData\Local\Temp\dialog.obj.9692.343.jom dialog.cpp cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MTd -GR -W3 -w34100 -w34189 -EHsc /Fddebug\StaticTest.pdb -DUNICODE -DWIN32 -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I"..\..\..\QT_Static\qt-static-5.4.0\include" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtWidgets" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtGui" -I"..\..\..\QT_Static\qt-static-5.4.0\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\QT_Static\qt-static-5.4.0\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\Kaven\AppData\Local\Temp\moc_dialog.obj.9692.609.jom moc_dialog.cpp echo 1 /* CREATEPROCESS_MANIFEST_RESOURCE_ID */ 24 /* RT_MANIFEST */ "debug\\StaticTest.exe.embed.manifest">debug\StaticTest.exe_manifest.rc if not exist debug\StaticTest.exe if exist debug\StaticTest.exe.embed.manifest del debug\StaticTest.exe.embed.manifest if exist debug\StaticTest.exe.embed.manifest copy /Y debug\StaticTest.exe.embed.manifest debug\StaticTest.exe_manifest.bak link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type=’win32′ name=’Microsoft.Windows.Common-Controls’ version=’6.0.0.0′ publicKeyToken=’6595b64144ccf1df’ language=’*’ processorArchitecture=’*’" /MANIFEST /MANIFESTFILE:debug\StaticTest.exe.embed.manifest /OUT:debug\StaticTest.exe @C:\Users\Kaven\AppData\Local\Temp\StaticTest.exe.9692.2297.jom 正在创建库 debug\StaticTest.lib 和对象 debug\StaticTest.exp if exist debug\StaticTest.exe_manifest.bak fc /b debug\StaticTest.exe.embed.manifest debug\StaticTest.exe_manifest.bak >NUL || del debug\StaticTest.exe_manifest.bak if not exist debug\StaticTest.exe_manifest.bak rc.exe /fodebug\StaticTest.exe_manifest.res debug\StaticTest.exe_manifest.rc Microsoft (R) Windows (R) Resource Compiler Version 6.1.7600.16385 Copyright (C) Microsoft Corporation. All rights reserved. if not exist debug\StaticTest.exe_manifest.bak link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type=’win32′ name=’Microsoft.Windows.Common-Controls’ version=’6.0.0.0′ publicKeyToken=’6595b64144ccf1df’ language=’*’ processorArchitecture=’*’" /MANIFEST /MANIFESTFILE:debug\StaticTest.exe.embed.manifest /OUT:debug\StaticTest.exe @C:\Users\Kaven\AppData\Local\Temp\StaticTest.exe.9692.2312.jom 正在创建库 debug\StaticTest.lib 和对象 debug\StaticTest.exp if exist debug\StaticTest.exe_manifest.bak del debug\StaticTest.exe_manifest.bak 13:44:42: 进程"C:\Qt\Qt5.4.0\Tools\QtCreator\bin\jom.exe"正常退出。 13:44:42: Elapsed time: 00:26. 运行: ![clipboard[40]](/https://i-blog.csdnimg.cn/blog_migrate/7d38fd57a1a0b3e05c2c865afb3965c3.png) 看一下生成的程序信息: ![clipboard[41]](/https://i-blog.csdnimg.cn/blog_migrate/8dfd8ea82986c5ed063ae69d6b9dc5b0.png) 16、用VS打开项目 ![clipboard[42]](/https://i-blog.csdnimg.cn/blog_migrate/5f7c360045ea44d9cf54fce9637060a1.png) ![clipboard[43]](/https://i-blog.csdnimg.cn/blog_migrate/77b463f019652c4a3fa2978337f11c84.png) VS编译项目: 编译输出如下: 1>—— 已启动生成: 项目: StaticTest, 配置: Debug Win32 —— 1>生成启动时间为 2015/3/13 13:53:15。 1>PrepareForBuild: 1> 正在创建目录“debug\”。 1>InitializeBuildStatus: 1> 正在创建“Win32\Debug\StaticTest.unsuccessfulbuild”,因为已指定“AlwaysCreate”。 1>CustomBuild: 1> Moc’ing dialog.h… 1> Uic’ing dialog.ui… 1>ClCompile: 1> dialog.cpp 1> moc_dialog.cpp 1> main.cpp 1> 正在生成代码… 1>Link: 1> StaticTest.vcxproj -> D:\Documents\QT\StaticTest\debug\StaticTest.exe 1>FinalizeBuildStatus: 1> 正在删除文件“Win32\Debug\StaticTest.unsuccessfulbuild”。 1> 正在对“Win32\Debug\StaticTest.lastbuildstate”执行 Touch 任务。 1> 1>生成成功。 1> 1>已用时间 00:00:05.15 ========== 生成: 成功 1 个,失败 0 个,最新 0 个,跳过 0 个 ========== 注意:此时用VS生成的项目还是用的动态库,因为未将静态库添加到VS中。 同上方法,将编译好的静态库也添加到VS设置中的Qt版本中: ![clipboard[44]](/https://i-blog.csdnimg.cn/blog_migrate/02a774388f0227776d897d0b894d3d2e.png) ![clipboard[45]](/https://i-blog.csdnimg.cn/blog_migrate/11454964a707bbeab6ad64f91b36c42f.png) ![clipboard[46]](/https://i-blog.csdnimg.cn/blog_migrate/56104e02289a27f34f39dc55213ae724.png) 然后,右键项目,Qt Project Settings ![clipboard[47]](/https://i-blog.csdnimg.cn/blog_migrate/70340e541b3cc001bfa1e790548f841f.png) ![clipboard[48]](/https://i-blog.csdnimg.cn/blog_migrate/5ec0eaf30b848d575b4d3cdb4c1963cb.png) 编译: 1>—— 已启动生成: 项目: StaticTest, 配置: Debug Win32 —— 1>生成启动时间为 2015/3/13 15:11:27。 1>PrepareForBuild: 1> 正在创建目录“debug\”。 1>InitializeBuildStatus: 1> 正在创建“Win32\Debug\StaticTest.unsuccessfulbuild”,因为已指定“AlwaysCreate”。 1>CustomBuild: 1> Moc’ing dialog.h… 1> Uic’ing dialog.ui… 1>ClCompile: 1> dialog.cpp 1> moc_dialog.cpp 1> main.cpp 1> statictest_plugin_import.cpp 1> 正在生成代码… 1>Link: 1> 正在创建库 debug\\StaticTest.lib 和对象 debug\\StaticTest.exp 1> StaticTest.vcxproj -> D:\Documents\QT\StaticTest\debug\StaticTest.exe 1>FinalizeBuildStatus: 1> 正在删除文件“Win32\Debug\StaticTest.unsuccessfulbuild”。 1> 正在对“Win32\Debug\StaticTest.lastbuildstate”执行 Touch 任务。 1> 1>生成成功。 1> 1>已用时间 00:00:14.37 ========== 生成: 成功 1 个,失败 0 个,最新 0 个,跳过 0 个 ========== ![clipboard[49]](/https://i-blog.csdnimg.cn/blog_migrate/0f9f0d0faaf6bc821e861a48807b1039.png) OK,本篇结束。 |