`
mypyg
  • 浏览: 545398 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Windows下静态编译QT程序

    博客分类:
  • Qt
阅读更多
Windows下编写的QT程序拿到别的机器上运行时总是要打包DLL,编译成静态程序更方便一些。

首先要编译一个静态的Qt库,因为ms的连接器需要.lib库,而qt自带的是.a库,所以要下载代码自己编译了。
编译前先修改一下spec:(下面是对于vs2008,如果是2005,则去找win32-msvc2005)
mkspecs ----> win32-msvc2008 ----> qmake.conf
修改QMAKE_CFLAGS_RELEASE = -O2 -MD 为QMAKE_CFLAGS_RELEASE = -O2 -MT
修改QMAKE_CFLAGS_DEBUG 为  = -Zi -MTd
修改这儿是因为Qt configure时的static选项对核心库无效,核心库仍然是动态链接的。另外-Zi也可以去掉,不生成pdb文件,如果不调试Qt内部就没必要要。
执行:
configure -release -static -fast -qt-sql-odbc -qt-sql-sqlite -no-webkit
nmake
等待个1,2小时的编译,生成一堆的.lib文件。
如果需要webkit就不要加-no-webkit参数

在vs中修改工程的属性:
配置属性 ----> C/C++ ----> 代码生成 ---->运行时库 ----> /MT or /MTd

这样最终生成的程序就是静态程序了,拿到没有QT库的机器上也可以运行了。
分享到:
评论
2 楼 mypyg 2011-10-10  
下载source代码自己编译
1 楼 charles_gz 2011-10-08  
新手求解:我使用的是SDK 需要怎么做?也要找到confignure?

相关推荐

    Qt5.6.3的windows minGW版本静态编译的方法

    Qt官方开发工具只提供了动态编译版本,生成的dll文件比较多,程序占用空间也比较大,而利用静态库进行编译就可以编译出...所以我在此分享一下Qt5.6.3在windows下编译静态库的方法,并介绍了静态库在Qt中的使用方法。

    staticlib5.6.3静态编译库

    这是我自己编译的可用于windows 32位系统下的QT静态编译库,此库为官方源码完全编译版本,支持QT5.6.3 mingw32位版本开发工具,可用来开发兼容于winxp系统及以上系统的程序,利用此库进行开发,可以编译出体积比较小...

    QT 5.15.10/windows msvc X64静态编译好的目录打包

    QT静态库,可以将Qt程序编译成独立运行的.exe文件,2013/8/26 vs2017 x64编译。 Q:为什么要使用QT静态库? A:用QtCreator编译程序时,使用的是动态编译。编译好的程序在运行时需要另外加上相应的Qt库文件,一大堆...

    Qt静态编译方法下载

    普遍在WINDOWS下开发QT程序大多用的是动态的方法使用QT库,这样在发布版本时必须拷贝QT动态库才能运行,使用繁琐,使用静态方式的QT库很好的解决了此类问题。本文档总结怎样在WINDOWS下编译出QT静态库,简单,易学,...

    Qt5.12.9 MinGW32bit 静态编译库(带MySQL驱动,无Qt3D、QtWebEngine)

    Windows10操作系统,使用MinGW32bit编译得到的Qt5.12.9静态库,带MySQL驱动(MySQL Server 5.7.30)。...配置使用方法参考本人发布的《Windows下Qt5.12.9静态编译(mingw 32bit)带MySQL全纪录》文章。

    vs2008 mt方式静态编译qt4.8.6库

    windows平台下,vs2008使用mt的编译方式,编译的qt4.8.6版本的静态库。 压缩包中包含了编译后的二进制库文件,以及使用qt库时的头文件等。 使用qt开发的程序不想带上qt的dll时,可以使用压缩包中的库进行开发,因为...

    vs2008 md方式静态编译qt4.8.6库

    windows平台下,vs2008使用md的编译方式,编译的qt4.8.6版本的静态库。 压缩包中包含了编译后的二进制库文件,以及使用qt库时的头文件等。 使用qt开发的程序不想带上qt的dll时,可以使用压缩包中的库进行开发,由于...

    全套Windows系统下 QT C++ 6.6 static 静态编译环境

    全套Windows系统下 QT C++ 6.6 static 静态编译环境,用它编译出单个可执行程序,不需要一堆依赖库。。。

    QT 5.14 ARM32 msvc开发库静态编译

    QT C++开发库ARM32架构已编译好的二进制文件,可以直接导入qt的目录下用qt creator或者vs的qt插件选择并且编译出适用于windows rt/win10 arm32平台的原生架构程序,用于移植更多的程序到Surface RT, Lumia 1520(WoA...

    QT 5.14 ARM64 msvc开发库静态编译

    QT C++开发库ARM64架构已编译好的二进制文件,可以直接导入qt的目录下用qt creator或者vs的qt插件选择并且编译出适用于windows10 arm64平台的原生架构程序,提升程序运行性能

    Qt Creator 的安装和hello world 程序+其他程序的编写--不是一般的好

    Qt Creator 编译的程序,在其工程文件夹下会有一个debug 文件夹,其中有程序的.exe 可执行文件。但Qt Creator 默认是用动态链接的, 就是可执行程序在运行时需要相应的.dll 文件。我们点击生成的.exe 文件,首 先...

    贪吃蛇源代码及可执行程序(C语言 QT)

    本程序是在windows7系统用C语言在QT上开发的贪吃蛇,并且实现了QT的静态编译,仅供学习交流。

    EZ_USB_FX3 上位机开发minGW版本CyAPI

    它实际上是将经典的开源 C语言 编译器 GCC 移植到了Windows 下,并且包含了 WindowsAPI ,因此可以将源代码编译生成 Windows下的可执行程序。MSVC是微软提供的编译器。cypress提供的官方库在QT中需要使用MSVC的...

    Qt多线程.zip 有几篇关于QT多线程编程的文章

    在两个平台上,你都应该定义宏QT_THREAD_SUPPORT来编译(比如,编译时使用-DQT_THREAD_SUPPORT)。在Windows上,这个通常可以在qconfig.h写一个条目来解决。 线程类 最重要的类是QThread,也就是说要开始一...

    浅谈Qt中使用CEF的几个要点(Windows下)

    最近项目中要在Qt中使用CEF(Chromium Embedded Framework),在这里总结下其中的几个要点。 下载合适的CEF版本 关于CEF的简介我们这里就不做介绍了,下载CEF可以有2种选择: 1、源码:强烈不建议下载源代码并编译...

    myQTApps:我方便的QT C ++应用程序

    QTstatic :带有PowerShell文件夹下载Qt源代码,编译并安装静态版本的Qt。 该脚本添加了Qt库的静态版本,以允许构建独立且自足的可执行文件。 要求:预装 (预构建Qt / MinGW环境),Windows 7,Mac OS 10.6或Linux...

    一个简易的流媒体测试工具

    其中压缩文件中的bin目录是已经编译好的程序,windows程序使用QtCreator + Vs2008编译,linux程序使用QtCreator + gcc4.3.2编译 sms_test/gui_sms_test是程序源码; sms_test/live是live555的头文件以及静态库 sms_...

    Ubuntu 16.04 安装 Qt 5.14.1

    Qt 是 一个跨平台的C++图形用户界面应用程序框架,图形界面库,Qt library为Qt程序提供头文件、静态链接库和动态链接库。 Qt Creator是跨平台的 Qt IDE。 以前的低版本Qt creator 和 Qt 是分开安装的,现在直接将...

    qt-interactive-coding:使用Qt进行C ++交互式实时编码

    可能的用途: 互动/创意/现场编码调试,状态检查应用程序脚本依赖关系: Qt 5(libQtCore5,qmake),C ++编译器工具链平台: Windows,Linux,可能还有Qt支持的其他平台演示版一体化该库由一个C ++源文件和几个头...

    嵌入式课件

    9.3.3 基于Windows下ADS的汇编语言程序结构 9.3.4 基于Linux下GCC的汇编语言程序结构 9.4 ARM汇编语言程序调试 9.4.1 ADS软件模拟环境下的程序调试 9.4.2 ADS硬件仿真器环境下的程序调试 9.4.3 ADS Wiggler调试电缆...

Global site tag (gtag.js) - Google Analytics