From:
- Loaden
- (老邓)
-
- 自己下载源码编译多好?
-
C/C++ code
-
一、编译动态发布版 修改编译选项(mkspecs\win32 - msvc2010\qmake.conf): QMAKE_CFLAGS_RELEASE = - O2 - Os - GL - MD QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += - O2 - Os - GL - MD - Zi 修改链接选项: QMAKE_LFLAGS_RELEASE = / INCREMENTAL:NO / OPT:REF / OPT:ICF QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO = / INCREMENTAL:NO / DEBUG / OPT:REF / OPT:ICF 修改完成后,备份qmake.conf,然后: 1 . 替换所有“ - Zi”和“ / DEBUG”为空,目的是编译Qt库时不生成pdb文件 2 . 替换所有“ - EHsc”为空,目的是编译Qt自身时禁用异常 配置: configure - confirm - license - opensource - prefix D:\qpSOFT\DEVx86\qt - debug - and - release - shared - platform win32 - msvc2010 - fast - no - stl - no - qt3support - nomake demos - nomake examples - nomake translations 编译安装: 1 . 拷贝目录mkspecs至D:\qpSOFT\DEVx86\qt 2 . nmake && nmake install 3 . 编译qdoc3的release版本 cd tools && cd qdoc3 && nmake release - all && copy / B / Y ..\..\bin\qdoc3.exe D:\qpSOFT\DEVx86\qt\bin && cd ..\.. 私有头文件: xcopy / S / I include\QtCore\ * _p.h ..\include\QtCore xcopy / S / I include\QtGui\ * _p.h ..\include\QtGui xcopy / S / I include\QtScript\ * _p.h ..\include\QtScript xcopy / S / I include\QtDeclarative\ * _p.h ..\include\QtDeclarative xcopy / S / I src\corelib\ * _p.h ..\src\corelib xcopy / S / I src\gui\ * _p.h ..\src\gui xcopy / S / I src\script\ * _p.h ..\src\script xcopy / S / I src\declarative\ * _p.h ..\src\declarative 在Qt源码目录中执行上述命令,之后将..\include和..\src目录拷贝到D:\qpSOFT\DEVx86\qt中! 推荐通过一个批处理( private .bat)来完成这个工作。 演示与示例: 1 . 重新配置 configure - confirm - license - opensource - prefix D:\qpSOFT\DEVx86\qt - debug - shared - platform win32 - msvc2010 - fast - no - stl - no - qt3support - nomake translations 2 . 编译安装 cd demos && nmake && nmake install && cd .. && cd examples && nmake && nmake install && cd .. 3 . 编译qtdemo的release版本 cd demos && cd qtdemo && nmake release - all && copy / B / Y ..\..\bin\qtdemo.exe D:\qpSOFT\DEVx86\qt\bin && cd ..\.. 后期处理: 1 . 清除重复的DLL(将qt\lib目录中的DLL全部删除) 2 . 清除多余的帮助文档(先运行qt\bin\assistant.exe,以便更新qt\doc\pch;然后删除qt\doc\src和qt\doc\html) 3 . 恢复qmake.conf,恢复“ - Zi”、“ / DEBUG”选项以及“ - EHsc”选项 4 . 删除demos目录下 * .exe 5 . 删除examples目录下所有 * debug * 、 * release * 及 * .exe 6 . 为demos和examples目录下所有文件添加只读属性 二、编译静态正式版 修改编译选项(mkspecs\win32 - msvc2010\qmake.conf): QMAKE_CFLAGS_RELEASE = - O2 - Os - GL - MT QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += - O2 - Os - GL - MT - Zi 修改链接选项: QMAKE_LFLAGS_RELEASE = / INCREMENTAL:NO / OPT:REF / OPT:ICF QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO = / INCREMENTAL:NO / DEBUG / OPT:REF / OPT:ICF 配置及编译: 1 . 备份qmake.conf,之后替换所有“ - EHsc”为空,目的是编译Qt自身时禁用异常 2 . configure - confirm - license - opensource - release - platform win32 - msvc2010 - fast - static - no - stl - no - qt3support 3 . nmake 4 . 恢复qmake.conf