C++ Qt 框架静态编译 操作记录
谁愿意写个程式出来之后还附带一堆DLL,尤其是名字如此明显的名字。
于是在网上看了看,是需要下载源代码然后进行编译的,但是看了看别人说的编译时间,长达几个小时,瞬间就感觉不想做了。因为我还需要抓紧时间code。
于是利用某某搜索引擎找了个 Qt 5.1 已经静态编译完毕之后的包。在文章的最后会提供下载地址,我们为了节约可贵的时间,我们之间使用别人已经编译好的包来进行静态编译。
首先我们下载Qt 5.1(下载地址在文章的最后)
然后我是直接放在 C盘下的
打开Qt Creator -> Tools -> Options..

然后我们加入 刚刚下载的Qt 版本
点击Add (无视我这里面已经有的)

于是我们选择 Qt/5.1.0-rel-static/bin/qmake.exe

可以看见已经添加了
(至于名字什么的随便乱取就是了 %{Qt:Version} 是一个变量)

然后我们点击 Kits 选项夹
新建一个Kit,注意自己看截图,至于编译器的话你在安装Qt的时候 应该会有一个选项可以让你下载的,没有的话就只能你自己去下载了

然后我们新建一个项目:
有一个选项即可。选择你刚刚建立的Kit

然后你的程序如果写好了的话,就可以单击“编译”来进行静态编译了;
注意模式要选择 Release 模式

至此,我相信你已经可以生成一个体积应该蛮大的EXE程序,带着你的Qt程序到处运行吧。
经过我的测试,Windows 7 32位/64位 WIndows 10 64位/32位 Windows Xp 32位 Windows 2003 32位 都可以正常运行。
生成的文件体积会有点大,内存占用略高,但是的确是制作 C++ 界面的一个好框架。不过值得一提的是,我用Qt 制作过一个 控制台程序,程序配置删除了 界面库:
pro 项目配置文件:
QT += core #加入核心库
QT -= gui #删除界面库
QT += network #加入网络库
CONFIG += c++11 #C++11 标准 TARGET = Suwings
CONFIG += console #添加控制台
CONFIG -= app_bundle TEMPLATE = app RC_FILE = suwings.rc
项目文件有26个文件,代码总计约3000行,生成出来的文件貌似是:

4MB左右,尤其是程序在运行的时候,内存占用在 0.9MB~1.5MB 之间;
所以我觉得如果要是将界面库给去掉,说不定是比不错的收益。
不过如果你连界面都不要了,那你用Qt是干什么的呢?不过确实Qt已经给我们提供了一套几乎完整的框架,让我找到一种在写Java的感觉。
Qt 已编译包下载地址:http://pan.baidu.com/s/1eSnys1s
下面推荐几个链接:
Qt 下载:https://www.qt.io/download/
Qt 自学之路:https://www.devbean.net/category/qt-study-road-2/page/10/
Qt 官方文档:http://doc.qt.io/qt-5/qtgui-module.html
Qt 中文文档(有点老):http://www.kuqin.com/qtdocument/index.html
感谢你的耐心阅读,希望对你有帮助。
C++ Qt 框架静态编译 操作记录的更多相关文章
- 记录下 QT Linux 静态编译遇到的坑
Qt下静态编译Qt,根据我的经验,如果按照Windows下那种直接拿官方sdk安装之后的文件来编译是行不通的,需要直接下载Qt的source包,目前诺基亚的源码叫做qt-everywhere-open ...
- 3.Qt GUI中一些操作记录
一.如何在Widget中利用代码添加背景图片 this->setAutoFillBackground(true); // QPalette palette = this->palette( ...
- QT静态编译
Qt静态编译(链接)和动态编译区别 Qt的静态编译译(其实应该叫链接,不是编译),将各模块编译成静态库,这样在编译自己写的Qt程序时,会将这些静态库编译(链接)到你的EXE文件中去的.Qt的动态编译, ...
- Linux下快速静态编译Qt以及Qt动态/静态版本共存
Qt下静态编译Qt,根据我的经验,如果按照Windows下那种直接拿官方sdk安装之后的文件来编译是行不通的,需要直接下载Qt的source包,目前诺基亚的源码叫做qt-everywhere-open ...
- Linux下快速静态编译Qt以及Qt动态/静态版本共存(提供了编译4.6,5.6的精通编译脚本,并且apt-get install 需要的库也全列出来了。还有分析问题的心理过程)good
qt4.6 Linux./configure -static -release -confirm-license -opensource -qt-zlib -qt-libpng -qt-libjpeg ...
- Ubuntu下Qt-4.7.1的静态编译
最近在学习Qt的静态编译,相比较来说windows的Qt静态编译比较容易,相反对于linux编译网上的文章实践下来都有这样那样的错误,这里简要小结一下自己的编译成果. 一.实验环境 1.Ubuntu ...
- Ubuntu14.04 静态编译安装Qt4.8.6
./configure -static -nomake demos -nomake examples -nomake tools -no-exceptions -prefix /usr/local/Q ...
- vs2010静态编译qt5.1.0
本博文参考 http://blog.chinaunix.net/uid-20690340-id-3802197.html 静态库在链接的时候直接写入二进制文件里,这样的好处在于发布的时候无需附带dll ...
- QT全平台设置图标,全平台静态编译 good
1. 概述 当我们用QT写好了一个软件,要把你的程序分享出去的时候,不可能把编译的目录拷贝给别人去运行.编译好的程序应该是一个主程序,加一些资源文件,再加一些动态链接库,高大上一些的还可以做一个安装 ...
随机推荐
- Entity Framework: Joining in memory data with DbSet
转载自:https://ilmatte.wordpress.com/2013/01/06/entity-framework-joining-in-memory-data-with-dbset/ The ...
- VC 2010的重大变化
auto 关键字具有新的默认含义.由于使用旧含义的情况很少见,因此大多数应用程序都不会受此更改影响. 引入了新的 static_assert 关键字,如果代码中已经存在具有某个名称的标识符,则此关键字 ...
- JVM性能分析与优化
JVM性能分析与优化: http://www.docin.com/p-757199232.html
- php的单例模式
据说,单例模式是设计模式中最简单的一种. 不多说,先上代码,然后解说,一共两个文件: danli.class <?php class Danli { //保存类的实例的静态成员变量 static ...
- Version of SQLCE in WP8
The version on the device is compatible with version 3.5 on the desktop, but the Windows Phone versi ...
- java中如何将JScrollPane的垂直滚动条自动移动到最下端
JPanel QQP = new JPanel(); JScrollPane jsp = new JScrollPane(QQP); JScrollBar jsb = jsp.getVerticalS ...
- C++的最佳特性(译)
最近看到了很多优秀的文章,包括<Why mobile web apps are slow>,实在忍不住翻译出来跟大家分享.这篇文章通过大量的实验和参考文献向我们说明移动应用开发所遇到的问题 ...
- 【转载】关于 Ubuntu 的小知识分享
转载自:http://os.51cto.com/art/201307/402197.htm 一.默认开机直接进入到Ubuntu命令行界面 安装Ubuntu后,开机会默认进入到图形界面,如果不喜欢图形界 ...
- JS微信分享不好写?来封装一下
微信开发这块,作为开发工程师来说,一般是避免不了的,也好像发现一些朋友写微信分享都是在每个页面一大把一大把的代码. 代码冗余,即便是复制过来再改也很麻烦. 之前自己封装了一下js,今天来分享一下,希望 ...
- Android Logcat 封装类
简单日志封装类: public final class CLog { public static final boolean DEBUG = true; private CLog() { } publ ...