全部博文(13)
分类: C/C++
2013-07-13 22:28:28
VS2010+QT5.1.0静态库编译
安装准备:
VS2010 安装的是网上下的版本
cn_visual_studio_2010_ultimate_x86_dvd_532347(ED2000.COM) 挺好用自己上网找吧
下载qt-everywhere-opensource-src-5.1.0.tar.gz
地址:
安装Perl5
ActivePerl-5.16.3.1603-MSWin32-x86-296746
安装Python python-2.7.5
安装Ruby
rubyinstaller-2.0.0-p247
Perl Python Ruby 都是按默认路径安装到C盘下了
设置环境变量Path
加上这下面几个路径:
C:\Ruby200\bin;C:\Python27;C:\Perl\site\bin;C:\Perl\bin;
解压qt-everywhere-opensource-src-5.1.0.tar.gz
运行Visual Studio命令提示(2010) 并将将工作目录切换到
qt-everywhere-opensource-src-5.1.0文件夹下(我是放到C:\Qt中了)
C:\Qt\qt-everywhere-opensource-src-5.1.0>
执行命令:
configure -confirm-license -opensource -prefix "C:\QT\5.1.0-rel-static_vc2010" -debug-and-release -static -platform win32-msvc2010 -no-c++11 -no-icu -opengl desktop -qt-zlib -qt-libpng -qt-libjpeg -nomake demos -nomake examples -nomake tests -mp
这里首先解决一个错误:
错误输出内容 qtbase\\configure.exe' 不是内部或外部命令,也不是可运行的程序
原因是直接下的代码,并不是用git里clone出来的。
解决办法是在qtbase创建一个.gitignore文件,里面内容为foo。
如在qt-everywhere-opensource-src-5.0.1目录下,可以运行命令:“echo foo > qtbase\.gitignore”。然后再configure即可通过。
echo foo > qtbase\.gitignore
执行命令:
configure -confirm-license -opensource -prefix "C:\QT\5.1.0-rel-static_vc2010" -debug-and-release -static -platform win32-msvc2010 -no-c++11 -no-icu -opengl desktop -qt-zlib -qt-libpng -qt-libjpeg -nomake demos -nomake examples -nomake tests -mp
没出什么错误的话,执行nmake 这个编译时间实在是太长了大概要
nmake install
关于congigure 命令中的各项说明
-opensource -confirm-license qt的使用协议,这个是使用开源协议,并同意
-prefix "C:\QT\5.1.0-rel-static_vc2010" 设置qt的安装目录,
-static 设置静态编译,动态编译的话,去掉
-platform win32-msvc2010 设置编译器类型,可根据情况换成win32-msvc2012 win32-g++或者其他 可选择类型在qtbase\mkspecs\目录下了
-debug-and-release编译debug和release版 只编译release设置 -release只编译debug的设置- debug
-no-c++11 关闭C++11的支持,目前只有vs2010
vs2012支持C++11特性
-no-icu 关闭不是使用icu
-opengl desktop 使用opengl
-nomake demos -nomake examples -nomake tests 不编译示例,测试
-mp 使用多核优化编译、
目录设置 |
|
|
|
-prefix
|
指定编译结果目录,如果不指定编译结果将会出现在Qtbase下 |
库编译 |
|
|
|
-debug |
生成debug库 |
|
-release |
生成release库 |
|
-debug-and-release |
生成debug及release库 |
|
-shared |
创建并使用动态Qt库 |
|
-static |
创建并使用静态Qt库 |
模块编译 |
|
|
|
-make
|
编译(libs,tools,examples...) |
|
-nomake
|
不编译(libs,tools,examples...) |
|
-skip
|
构建时排除该模块 |
|
-no-widgets |
禁止编译widgets模块 |
|
-no-sql- |
禁止编译指定SQL驱动 |
|
-no-opengl |
不支持opengl |
|
-opengl
|
使能opengl指定API desktop 桌面OpenGL es1 es2 |
|
-icu |
使用ICU库 |
|
-no-icu |
不是用ICU |
Windows支持 |
|
|
|
-no-vcproj |
不生成vc++.vcproj文件 |
|
-vcproj |
只针对"win32-msvc.net", |
|
-no-openssl |
不编译openssl |
关于congigure选项这里只是简单参照网上的一般设置具体介绍可参考下面一篇比较好的博文
链接地址:
http://www.cnblogs.com/liff-engineer/archive/2013/05/20/3088740.html
Qt Creator 2.8安装
下载qt-creator-windows-opensource-2.8.0.exe
Qt Creator 静态编译设置
工具->选项(option)
QT版本
添加 选择编译安装的qmake 目录C:\Qt\5.1.0-rel-static_vc2010\bin
选择构建套件(kit)
名称:QT5.1.0_VS2010_static
QT版本:选5.1.0-rel-static_vc2010
新建文件项目->Qt Gui项目 名称QtDemo
构建套件选择刚刚设置的 QT5_1_0_VS2010_static
编译运行
build-QtDemo-QT5_1_0_VS2010_static-Debug\debug 目录下有静态链编生成的应用程序 有16.4M 最简单的小测试程序……
MinGW+QT5.1.0静态库编译
安装Perl5 Python Ruby 同前
安装MinGW
MinGW 4.7
tdm-gcc-4.7.1-2
将MinGW32\bin路径添加到Path环境变量中
配置命令:
configure.bat -prefix C:\Qt\Qt5.1.0_Static -release -static -no-c++11 -opengl desktop -no-angle -nomake examples -nomake tests -nomake doc -skip qtwebkit
编译安装命令
mingw32-make
mingw32-make install
有问题编译不过啊!!!!!!!暂时没整明白