使用VS2005安装和编译QT4.53源码
学习Qt,当然是QT4好。可是装了4.86以后,网上下载的书中的例子大多无法直接用VS执行(个人不喜欢用QT Creator),即打开pro转换的时候出错(我也懒的研究为什么出错了)。看了一下发布时间,觉得4.53时间比较合适,是2009年末发布的。也许能运行书上的例子。
因为很懒,所以不想编译QT源代码,最好装上就能用。所以下载了qt-win-opensource-4.5.3-mingw.exe,安装报错,说找不到mingw。所以又下了MinGW-5.1.4.exe,这是个在线安装版本,我非常不喜欢,但是也没办法,实在找不到离线版本。不过没想到,安装也挺简单的,而且都下载到本地,干脆我就把它们全保留了,省得下次还要下载。安装完以后要设置:
---------------------Windows下安装MinGW后环境变量配置---------------------
http://blog.csdn.net/johnpub/article/details/9246887
1、在PATH里加入C:\MinGW\bin,记得,如果里面还有其他的变量,记得要加个分号啊,分号得在英文输入模式下输入的。
2、新建LIBRARY_PATH变量,如果有的话,在值中加入C:\MinGW\lib,这是标准库的位置。
3、新建C_INCLUDEDE_PATH变量,值设为C:\MinGW\include。
4、新建CPLUS_INCLUDE_PATH变量,值为C:\MinGW\include\c++\3.4.5;C:\MinGW\include\c++\3.4.5;C:\MinGW\include\c++\3.4.5\backward;C:\MinGW\include
或者
1、添加MINGW_HOME,值为:C:\MinGW
2、添加C_INCLUDE_PATH,值为%MINGW_HOME%\include
3、添加CPLUS_INCLUDE_PATH,值为
%MINGW_HOME%\lib\gcc;%MINGW_HOME%\lib\gcc\mingw32;%MINGW_HOME%\lib\gcc\mingw32\4.7.2;%MINGW_HOME%\lib\gcc\mingw32\4.7.2\include;%MINGW_HOME%\lib\gcc\mingw32\4.7.2\include\c++;%MINGW_HOME%\lib\gcc\mingw32\4.7.2\include\c++\backward;%MINGW_HOME%\lib\gcc\mingw32\4.7.2\include\c++\mingw32;
4、path添加值:%MINGW_HOME%\bin;
------------------------------------------------------------------------------------
然后就可以安装了qt-win-opensource-4.5.3-mingw.exe了,一切都没有问题。
但我的目的是使用VS2005学习QT4,所以继续。安装VS2005,这个简单。然后安装qt-vs-addin-1.1.11-opensource.exe (for qt4),这个也简单。然后在VS的QT->QT Options菜单里设置QT版本,当然选择之前安装的4.53,结果报错,说是MinGW版本。说的这么明白,肯定是不行了。所以没办法,不能偷懒了,必须自己编译源代码。网上搜了一些文章,折腾了好一会儿,都不行。主要是能运行QT源码目录里的configure,但不能运行之后的nmake。原因是configure运行的不好或者不成功。后来成功运行了configure,主要是设置一些系统参数(不是configure的命令参数啊),如下(特别是第三项,我漏了这个):
QTDIR —— 刚刚解压的Qt根目录,
添加%QTDIR%\bin到Path,
QMAKESPEC —— win32-msvc2005
如此之外,我还设置了%QTDIR%\Lib到Path,运行过vcvarsall.bat,因为一开始不成功,所以参考了一些其它文章,其中就提到了这些,也不知道有没有影响。
因为我需要全版本的QT,所以Configure命令不带任何参数。
几分钟之后,configure就结束了,然后运行namke.exe,这个需要2个小时。然后就可以使用VS2005打开QT项目的.pro文件,可以自动转换,不报任何错。至少《Linux窗口程序设计―Qt4精彩实例分析-实例源代码》这本书里的几个项目文件都没问题(QT跨平台特性一流,明明书是给Linux的,VS打开项目文件照样直接运行,爽)。后来又试了C++ GUI Qt4 编程(第二版)的例子,带中文路径,转换和运行都没有问题。爽~
主要参考:
http://hi.baidu.com/maxint/item/694146accb222c38020a4d5a
使用VS2005安装和编译QT4.53源码的更多相关文章
- msvc2013编译qt5.6源码
1.回顾 说起到qt的编译,真是领人痛心啊,不仅编译选项繁多,而且编译时间比较久,总是能使想编译qt源码的人望而却步,呵呵...我就是其中一个,不知道从什么时候开始就想着把qt的源码编译一下,也尝试过 ...
- Ubuntu 下载 & 编译 Android5.1 源码
ustc & tsinghua android srchttps://lug.ustc.edu.cn/wiki/mirrors/help/aosphttps://mirrors.tuna.ts ...
- 在Ubuntu Server14.04上编译Android6.0源码
此前编译过Android4.4的源码,但是现在Android都到了7.0的版本,不禁让我感叹Google的步伐真心难跟上,趁这周周末时间比较充裕,于是在过去的24小时里,毅然花了9个小时编译了一把An ...
- 编译android5.0源码的
java环境 Android 5.1 用到的jdk不再是Oracle 的 jdk ,而是开源的 openjdk,在ubuntu安装好后,使用如下命令安装jdk: $sudo apt-get insta ...
- 【转】编译Android系统源码和内核源码
原文网址:http://blog.csdn.net/jiangwei0910410003/article/details/37988637 好长时间没有写blog了,之所以没有写,主要还是工作上的事, ...
- vs2008编译FileZilla客户端源码
vs2008编译FileZilla客户端源码 下载FileZilla客户端源码,下载地址https://download.filezilla-project.org/. FileZilla客户端解决方 ...
- 编译jmeter5.0源码
jmeter5.0使用过程中,遇到request或者response乱码的情况,想要一次性解决这个问题,需要编译ApacheJMeter_http.jar这个包(lib\ext文件下)里的Reques ...
- FW 编译Android系统源码和内核源码
编译Android系统源码和内核源码 分类: Android2014-07-21 20:58 7287人阅读 评论(28) 收藏 举报 好长时间没有写blog了,之所以没有写,主要还是工作上的事,发现 ...
- 【原】storm源码之mac os x编译twitter storm源码
twitter storm是由backtype公司创始人nathanmarz一手研发和开源的流计算(实时计算)框架,堪称实时计算领域的hadoop.nathanmarz也是在mac os x环境下开发 ...
随机推荐
- TWaver MONO模板库新鲜出炉 精彩纷呈
MONO Design在线3D建模平台网站, www.mono-design.cn,开发组的成员们已经开始紧锣密鼓的对这个平台进行内测.在之前的文章里,我们提到用户可以获得多种多样的TWaver官方模 ...
- java学习日志--char和int的相互转换
package shugen; /*ASCLL码表 * 48 数字0 * 49 1 * 50 2 * 51 3 * 52 4 * 53 5 * 54 6 * 55 7 * 56 8 * 57 9 */ ...
- Effective C++标题整理
Effective C++ 话说光看这50个tip又有什么用呢?只有实际使用的时候才体现它们的价值才对. 就像只看<代码大全>不能成为一个好程序员,必须结合实际写项目经验才行. 从C转向C ...
- centos7进入救援模式,修复错误配置
因某些修改操作,导致系统重启后无法正常启动,此时可进入救援模式,修复错误配置即可. OS:centos 7 1.重启系统后,进入grup引导页面,选中第一项然后按“e” 进入编辑模式: 2.通过↓键找 ...
- CentOS 6磁盘配额
可以指定用户能超过其配额限制.如果不想拒绝用户对卷的访问但想跟踪每个用户的磁盘空间使用情况,启用配额而且不限制磁盘空间的使用是非常有用的.也可指定不管用户超过配额警告级别还是超过配额限制时是否要记录事 ...
- 爬虫实战(一) 用Python爬取百度百科
最近博主遇到这样一个需求:当用户输入一个词语时,返回这个词语的解释 我的第一个想法是做一个数据库,把常用的词语和词语的解释放到数据库里面,当用户查询时直接读取数据库结果 但是自己又没有心思做这样一个数 ...
- ebay 店铺状态
OrderStatusCodeType @XmlEnumValue("Active") @XmlEnumValue("Inactive") @XmlEnumVa ...
- Sublime text如何设置快捷键让编写的HTML文件在浏览器预览?
STEP 1 Tools->Build System->New Build System STEP 2<img src="https://pic3.zhimg.com/ ...
- RMI分布式议程服务学习
转自:http://6221123.blog.51cto.com/6211123/1112619 这里讲述的是基于JDK1.5的RMI程序搭建,更简单的说是一个 HelloWorld RMI. 1. ...
- hdu 1185 状压dp 好题 (当前状态与上两行有关系)
/* 状压dp 刚开始&写成&&看了好长时间T0T. 状态转移方程 dp[i][k][j]=Max(dp[i][k][j],dp[i-1][l][k]+num[i][j]);( ...