VS2013编译Qt5.4静态库

设置了一天,这静态编译也总算是虐出来了。。。Qt 的静态编译简直不要太麻烦啊。。。

感谢这位大神提供的方法

http://zerooverture.com/tutorials/qt/737.html

工具下载:

http://pan.baidu.com/s/1hq2Cff2

一、环境配置

我目前用的系统是Windows 7 64bit,请注意安装好以下软件,以及配置好环境变量:

Visual Studio 2013

python

perl

安装好以上软件 请用cmd测试下 python和perl,如果提示不是内部或外部命令,也不是可运行的程序或批处理文件之类的那说明没配置好环境变量,请在你的环境变量path中添加 F:\Qt\5.4\msvc2013_64\bin;F:\Python33;F:\MinGW\mingw64\bin
(根据自己的安装路径进行更改)

配置环境变量:计算机->属性->高级系统设置->环境变量->系统变量->Path

1.MinGw:

Path后加

;F:\MinGW\mingw64\bin

2. Python:

Path 后加:

;F:\Python33

;F:\Qt\5.4\msvc2013_64\bin

3. Perl:

新建perl变量并加路径

F:\Perl\bin

cmd测试:

gcc –v

python

perl -v

二、准备工作

http://download.qt-project.org/development_releases/qt/5.4/5.4.0-beta/qt-opensource-windows-x86-msvc2013_64_opengl-5.4.0-beta.exe(安装QT根据自己的VS版本)

这个很简单 就和安装一般的程序一样一步步安装即可,那么下面说就是编译一个 静态库存放到 安装好的Qt中以便使用

下载

http://download.qt-project.org/development_releases/qt/5.4/5.4.0-beta/single/qt-everywhere-opensource-src-5.4.0-beta.zip(安装静态编译需要的包)

将其解压 到F:\qt-everywhere-opensource-src-5.4.0-beta(自己看着办即可)

下面的修改很重要

根据你的VS版本进入Qt相应的文件夹修改qmake.conf,我是win32-msvc2013

F:\Qt\5.4\msvc2013_64\mkspecs\win32-msvc2013\qmake.conf


1

2

3

4

5

6

7

8


QMAKE_CFLAGS_RELEASE    = -O2 -MD -Zc:strictStrings

QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi -Zc:strictStrings

QMAKE_CFLAGS_DEBUG      = -Zi -MDd

//将以上改为

QMAKE_CFLAGS_RELEASE    = -O2 -MT -Zc:strictStrings

QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi -Zc:strictStrings

QMAKE_CFLAGS_DEBUG      = -Zi -MTd

//即将MD(动态)改为MT(静态)

准备完成下面即开始编译

三、编译静态库并安装

下面打开VS2013的开发人员命令提示工具,从开始菜单中自己找。或者看看下面路径里有没

F:\VS2013\Common7\Tools\Shortcuts\VS2013开发人员命令提示

转至Qt下载解压的目录

F:\Qt\5.4\msvc2013_64\mkspecs\win32-msvc2013\qmake.conf

执行configure 注意检查:


1


configure -confirm-license -opensource -platform win32-msvc2013 -debug-and-release -static -prefix " F:\Qt\5.4\static-vs2013" -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

其中 “F:\Qt\5.4\static-vs2013″  是最后静态库安装的位置我安装的就是最开始 安装QT的地方 嘛 这个可以随便复制的

这一步如果提示 找不到configure.exe命令是因为下载的zip问题 执行下面的方法即可

1.新建一个.gitignore文件

如何创建一个没有名字的文件??

你创建一个文件,随便什么都可以,改名如 1.txt留着备用。里面输入foo

再创建一个文本文件如do.txt,输入如下内容:

ren 1.txt .gitignore

保存后将 do.txt改为 do.bat

然后鼠标双击 do.bat

2.内容填写 foo
保存即可

3.保存到F:\qt-everywhere-opensource-src-5.4.0-beta\qtbase中

4.CMD在F:\qt-everywhere-opensource-src-5.4.0-beta目录执行 echo foo > qtbase\.gitignore

VS2013下cmd命令

cd"F:\qt-everywhere-opensource-src-5.4.0-beta"

echo foo >qtbase\.gitignore

configure-confirm-license -opensource -platform win32-msvc2013 -debug-and-release-static -prefix "F:\Qt\5.4\static-vs2013" -qt-sql-sqlite -qt-sql-odbc-plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengldesktop
-qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples-skip qtwebkit

再执行之前的configure代码即可

执行nmake:

输入nmake 回车

这一步超长,,,大概1个小时半左右,可以最小化该干嘛干嘛,我用的SSD  机械硬盘可能会更久,猜测。。

执行nmake install

nmake结束以后执行nmake install程序会把编译好的静态库安装到之前设定的目录 静态库即可使用了。

三、使用静态库

打开Qt Creator,工具->选项->构建和运行->QtVersions->添加

把刚才安装的静态库加进去 选浏览 把 F:\Qt\5.4\static-vs2013\bin\qmake.exe选进去即可 (不单是刚编译的以后如果拿到别的也可以这么添加)

选择 构建套件(Kit)选项卡 添加一个套件看下面设置 自行更改

经过上面操作 已经完成所有的编译安装,新建个项目选择 静态库的kit试试吧,最后生成的release\exe文件大概在10M以内 通过TMD压缩下 有4M左右= ,=不得不说 如果不考虑跨平台。。用C#还是不错的至少现在.net framework windows都预装了生成的exe才几百K。。。

Note:在最后一步构建kit的时候我发现有个警告,好像说是可能不兼容,不过我测试一切正常。不知道具体是什么 有遇到的或者知道的还请留言告诉下。

时间: 2024-10-13 09:25:54

VS2013编译Qt5.4静态库的相关文章

VS2013编译Qt5.6.0静态库(乌合之众)

获取qt5.6.0源码包 直接去www.qt.io下载就好了,这里就不详细说了. 这里是我已经编译好的** 链接:http://pan.baidu.com/s/1pLb6wVT 密码: ak7y ** configure配置 1.进入源码目录下的qtbase\mkspecs\win32-msvc2013目录,打开文件qmake.conf文件.添加 QMAKE_CFLAGS_RELEASE = -O2 -MT -Zc:strictStrings QMAKE_CFLAGS_RELEASE_WITH_

Windows下编译libcurl.lib静态库

1.下载最新版的libcurl,我的是curl-7.44.0.zip,解压,进入目录winbuild,仔细阅读BUILD.WINDOWS.txt这篇文档 打开VS2013 开发人员命令提示并执行nmake /f Makefile.vc mode=static VC=12 完成编译后libcurl静态库会出现在builds目录下包括头文件和libcurl_a.lib,我们需要的是builds/libcurl-vc12-x86-release-static-ipv6-sspi-winssl下面的in

g++编译使用生成静态库和动态库(Linux)

参考文献: Linux下g++编译与使用静态库和动态库 用g++编译生成动态链接库*.so的方法及连接(多个.cc生成一个*.so) 占坑

编译 python 生成静态库 libpython2.7.so

由于我们是C++作驱动的Python开发,驱动需要加上Python静态库libpython2.7.so.libpython2.7.so.1.0.libpython2.7.a.此处我想在python源码上加上自己加的log,因此要重新编译Python生成静态库,再生成驱动. 一般快速编译安装Python源码步骤: ./configure make make install 如果要生成静态库libpython2.7.so.libpython2.7.so.1.0.libpython2.7.a,则为:

android开发 NDK 编译和使用静态库、动态库 (转)

在eclipse工程目录下建立一个jni的文件夹 在jni文件夹中建立Android.mk和Application.mk文件 Android.mk文件: Android提供的一种makefile文件,用来指定诸如编译生成so库名.引用的头文件目录.需要编译的.c/.cpp文件和.a静态库文件等.详见附件中的Android.mk. Application.mk文件: 定义了项目的一些细节,比如APP_ABI := x86(编译X86平台库).APP_PLATFORM := android-9(使用

android开发 NDK 编译和使用静态库、动态库

在eclipse工程目录下建立一个jni的文件夹. 在jni文件夹中建立Android.mk和Application.mk文件. Android.mk文件: Android提供的一种makefile文件,用来指定诸如编译生成so库名.引用的头文件目录.需要编译的.c/.cpp文件和.a静态库文件等.详见附件中的Android.mk. Application.mk文件: 定义了项目的一些细节,比如APP_ABI := x86(编译X86平台库).APP_PLATFORM := android-9(

iOS——为Xcode编译POCO C++静态库

一.POCO C++ library简介 POCO C++ library是一个C++编写的跨平台库,主要实现网络连接.数据库管理以及服务器,适用于跨平台.嵌入式. 二.为Xcode编译POCO C++ 静态库 1.确定需要编译的版本 要想使POCO C++在iOS的各个平台上运行,那么需要针对各个平台的不同架构进行编译,因此我们需要了解iOS各个平台的架构,主要分为iPhone模拟器.iPhone真机以及运行Xcode电脑本身的架构. (1)iPhone模拟器 目前iPhone模拟器架构分为两

Tesseract 3.04 + VS2013 配置心得(包括静态库版本号和Release版本号)

研究Tesseract也有几个星期了 走了一些弯路 网上有非常多VS2010的配置心得 但没有VS2013的, 找到一篇之后, 又发现会有一些小问题, 这里记录下来, 也为新人提供一些帮助. Tesseract官网:https://code.google.com/p/tesseract-ocr/ 还是先说下Tesseract库的依赖架构: 有了这个库的依赖关系, 就能够说下自己配置VS2013版本号的目的了: a. 因为网上现有的都是现编译好的GIF, JPEG,PNG,TIFF,ZLIB库的D

VS2010编译链接openssl静态库

最近工作需要使用一些加密算法.之前尝试过cryptopp以及polarssl,听说openssl中的加密模块特别全,并且特别好用.于是想尝试一下. 一.环境配置 下载openssl,我这里使用的是openssl-1.0.1s.解压后查看自带的win32说明文件.我这里解压到d盘 按照安装说明下载activeperl. 二.编译静态库 执行命令: cd D:\openssl-1.0.1s D: perl Configure VC-WIN32 no-asm --prefix=D:\openssl-1