原文请看:http://blog.csdn.net/loaden/article/details/6061702

Qt如果采取默认编译安装,一般都要占用上G的空间。当初自己不想涉及Qt的一个原因,就是嫌它太臃肿了。近期通过反复对比,发现Qt还是有着很大潜力的,于是,决定好好学习一下,就有了这篇精简编译的笔记。

修改编译选项(mkspecs/win32-msvc2010/qmake.conf):
QMAKE_CFLAGS_RELEASE = -O2 -Os -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -Os -MD -Zi

修改链接选项:
QMAKE_LFLAGS_RELEASE = /INCREMENTAL:NO /OPT:REF /OPT:ICF
QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO = /INCREMENTAL:NO /DEBUG /OPT:REF /OPT:ICF

配置:
configure
-prefix D:/DengYC/LoveDEV/qt -debug-and-release -platform
win32-msvc2010 -fast -shared -opensource -no-qt3support -nomake demos
-nomake examples -nomake translations

编译安装(先拷贝目录mkspecs至D:/DengYC/LoveDEV/qt):
nmake && nmake install

清理:
1. 清除重复的DLL(将qt/lib目录中的DLL全部删除)
2. 清除多余的PDB调试文件(搜索qt目录*.pdb,删除全部pdb文件)
3. 清除多余的帮助文档(首先要运行qt/bin/assistant.exe,以便更新qt/doc/pch;然后删除qt/doc/src和qt/doc/html)

经过清理,将Qt从920MB精简到231MB,务必注意:不可再改变Qt所在路径!!

Qt精简编译方法总结的更多相关文章

  1. qt 4.6.2 与visual studio 2005 集成(编译方法,以及中间遇到的问题)

    不知不觉在蒂森差不多半个月了,哈哈,时间过得很快,过得很充实,近来研究QT,首先嘛,肯定要学会安装了,这最基础的不会更不用说下面的啦.闲话少说,进正题,基本的安装步骤网上多的是,但参考一个大多数情况是 ...

  2. QT 4.8 静态库编译方法

    最最初踏上QT之路是受到了XiaomaGee的指点,相比于常规的窗口程序开发,QT有着以下特点: 1. 优良的跨平台特性(支持Win.Linux.Mac 不同的平台下只需重新编译即可使用) 2. 面向 ...

  3. [转]QT 4.8 静态库编译方法

    最最初踏上QT之路是受到了XiaomaGee的指点,相比于常规的窗口程序开发,QT有着以下特点: 1. 优良的跨平台特性(支持Win.Linux.Mac 不同的平台下只需重新编译即可使用) 2. 面向 ...

  4. qmake.exe是在Qt安装编译时生成的,里面内嵌了Qt相关的一些路径(最简单的方法是保持一样的安装路径,最方便的办法是设置qt.conf文件)

    在网上直接下载别人编译好的Qt库,为自己使用省了不少事.但往往也会遇到些问题,其中Qt version is not properly installed,please run make instal ...

  5. Qt官方对OpenSSL的编译方法的描述,单独下载的Qt library则一般不带SSL(包括QT FAQ)

    https://wiki.qt.io/MSYS2http://wiki.qt.io/Compiling_OpenSSL_with_MinGWhttps://wiki.qt.io/MinGW-64-bi ...

  6. OpenCV与QT联合编译 分类: Eye_Detection ZedBoard OpenCV shell ubuntu 2014-11-08 18:54 143人阅读 评论(0) 收藏

    问题1:首先参考rainysky的博客,发现qmake时发生找不到目录,文件的错误,又找不到 qmake.conf 文件的写法.所以开始按照网上的程序修改 XXX.pro 文件. 问题2:使用QT C ...

  7. 加快QT工程编译速度

    转载:学海方舟 利用Qt Creator编译工程大家都觉得慢,特别是整个工程重新编译时,那问题来了怎么加快编译速度呢 ,其实方法很简单,利用我们的强大的多核CPU来实现多核编译: 在编译参数中加入“- ...

  8. QxOrm 1.2.9 下载 以及编译方法 简介.

    QxOrm 是一个基于QT开发的数据库方面的ORM库,功能很强大,是QT C++数据开发方面的好工具. 目前已经更新1.3.1 .但 不幸的是 它的官网http://www.qxorm.com/ 莫名 ...

  9. 支持源码单步调试QT库编译笔记

    支持源码单步调试QT库编译笔记 编译环境:windows 10 编译工具:mingw_4_4_0 Qt源码版本:qt-everywhere-opensource-src-4.8.5(下载地址:http ...

随机推荐

  1. eclipse中编写代码时如何自动提示变量名?

    打开 Eclipse  -> Window -> Perferences -> Java -> Editor -> Content Assist,在右边最下面一栏找到 a ...

  2. [LeetCode] 4. Median of Two Sorted Arrays ☆☆☆☆☆

    There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two ...

  3. 搜索:BFS

    如果题目真的要考察宽度优先搜索,那么这类题目往往具有比较大的编码难度,换个说法,就是细枝末节特别多,状态特别复杂.. 剥茧抽丝,这里以一个比较“裸”的BFS作为例子,了解一下实现BFS的一些规范. 直 ...

  4. [洛谷P2375] [NOI2014]动物园

    洛谷题目链接:[NOI2014]动物园 题目描述 近日,园长发现动物园中好吃懒做的动物越来越多了.例如企鹅,只会卖萌向游客要吃的.为了整治动物园的不良风气,让动物们凭自己的真才实学向游客要吃的,园长决 ...

  5. java -classpath or -cp 的设置和解释

    classpath is a parameter—set either on the command-line, or through an environment variable—that tel ...

  6. Hibernate数据连接不能正常释放的原因,以及在监听中获取apolicationContext上下文

    Hibernate数据库连接不能正常释放: https://blog.csdn.net/u011644423/article/details/44267301 监听中获取applicationCont ...

  7. 超详细的Java面试题总结(一)之Java基础知识篇

    面向对象和面向过程的区别 面向过程:   优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机.嵌入式开发.Linux/Unix等一般采用面向过程开发,性能是最重要的因 ...

  8. MSSQL数据库 "无法删除数据库 "***",因为该数据库当前正在使用" 解决方案

    --1 创建数据库 create database AAA --2 使用数据库 use AAA --3 在AAA数据库下创建table create table BBB ( bId ,) primar ...

  9. ButterKnife用法详解

    http://www.cnblogs.com/zhaoyanjun/p/6016341.html 本文出自[赵彦军的博客] 前言 ButterKnife 简介 ButterKnife是一个专注于And ...

  10. Python【模块】importlib,requests

    内容概要:      模仿django中间件的加载方式      importlib模块      requests模块  rsplit()   用实际使用的理解来解释两个模块 importlib模块 ...