领先的中文IT技术网站    IT技术从现在起飞

飞诺旗下: 技术社区 | 在线电子书 | 在线试题 | 资源下载 | 飞诺搜索 | 技术博客
用户名: 密   码:
   飞诺网 加入收藏
飞诺网 C++ 新闻频道 开发频道 系统频道 服务器 网络频道 网络安全 Java频道 C/C++ PHP开发 电子书 资源下载 社 区 博 客 在线试题
软件编程 C C++ Java VB Delphi Foxpro 汇编语言 游戏开发 移动开发 软件工程师 软工与管理 VC shell编程 C#
编程开发 JAVA C/C++ C++ VC C语言 VB C# Delphi Foxpro 汇编 shell编程 游戏开发 软件工程师 WEB开发 PHP ASP Asp.net JSP AJAX CGI JavaScript HTML CSS 数据库 MSSQL Mysql Oracle Access Sybase DB2 sql2005 Office Word Excel Powerpoint Wps 认证考试 二级C语言 三级网络 程序员 网络工程师 思科认证

您当前的位置:飞诺网 >> c/c++ >> C++技术文章

qt在vs2005下的编译安装

www.firnow.com    时间 : 2007-10-18  作者:佚名   编辑:本站 点击:   [ 评论 ]

QT有商业版和免费开源的,但是针对Windows下trolltech 没有提供免费的编译好的二进制库,同时在linux下自带的版本都比较低,fedora6的还使用的是3.*的,所以,自己编译下QT还是有必要的。在linux下面,和其他的一样./configure,make ,make install一路下来就可以了,之后在home的.bashrc中设置一些QT环境变量即可。比较简单。而在windows下安装比较麻烦,尤其对习惯于等待windows把所有东西都准备的很好的windows用户,自己编译库是不习惯的,尤其是QT这样需要配置很多东西的。但是安装完成之后,仔细想下也没有什么了,QT库和其他的Boost,ACE等都一样,就是C++的Dll形式的库而已,我们的工作就是编译出一大堆Dll以及exe工具,仅此而已,如果你编译过简单的dll,估计QT的编译也不是很难理解了。
所以,这里简单的翻译下我安装过程中参考的文档。我的环境是32位的笔记本,Windows XP sp2, VS2005, QT 4.2.3,这里需要注意的是,VS2005没有打补丁,否则编译出错,我没有去试图解决,因为我的没有补丁 :-)
原文参考这里:http://www.qtnode.net/wiki/Qt4_with_Visual_Studio

1. 下载代码:到官方网站http://www.trolltech.com/developer/downloads/qt/windows下载windows下的opensource的压缩包,或者来这里http://www.qtnode.net/wiki/Download_Qt下载名字类似qt-win-opensource-src-4.2.3.zip。然后下载编译VS的QT库的补丁http://downloads.sourceforge.net/qtwin/acs-4.2.3-patch1.zip,解压这两个包到一个目录,如C:\Qt\4.2.3

2.配置环境
配置VS的vsvars32.bat,一般在C:\Program Files\Microsoft Visual Studio 8\Common7\Tools下面在PATH的头部添加QT所在目录,如C:\Qt\4.2.3,在INCLUDE上添加C:\Qt\4.2.3\include,LIB中添加C:\Qt\4.2.3\lib,具体的目录是你刚才解压的目录,打开这个批处理文件,看着原来怎么写的你就学着写好了。俺的类似如下:
@set PATH=C:\Qt\4.2.3;C:\Program Files\Microsoft Visual Studio 8\Common7\IDE;。。。%PATH%
@set INCLUDE=C:\Qt\4.2.3\include;C:\Program Files\Microsoft Visual Studio 8\VC\ATLMFC\INCLUDE;。。。%INCLUDE%
@set LIB=C:\Qt\4.2.3\lib;C:\Program Files\Microsoft Visual Studio 8\VC\ATLMFC\LIB;。。%LIB%
打开一个cmd命令行窗口,把这个文件托过来执行,这样,你打开的cmd就具有上面设置的环境变量了,但是这些变量只针对你当前的cmd,不会更改本机配置,所以,不要关闭cmd窗口,执行下nmake /?看看能不能找到nmake命令

3.打补丁
执行刚才解压acs-4.2.2-patch1.zip之后的那个installpatch42.bat,直接托过来运行就好了。
C:\Qt\4.2.3> installpatch42.bat

4.配置QT安装,QT需要一些,定位到QT的目录下面,执行C:\Qt\4.2.3> qconfigure.bat msvc.net -release -no-stl上面的选项根据你自己需要来写啊,比如你要debug版,就加个-debug选项,想要STL就把后面的去掉。第一个参数表示你编译出来的为那个VS版本使用,msvc 对应Visual Studio 6.0,msvc.net对应2003,我的2005就用 msvc2005了。如果你不怕一会编译时间太长,你就干脆直接输入C:\Qt\4.2.3> qconfigure.bat msvc2005会输出一些配置信息,默认情况会编译很多东西。看好了,是不是你想要的,没有问题,就同意好了

5.编译
运行nmake
C:\Qt\4.2.3> nmake
慢慢等吧,或者让它自己在那跑,你自己继续工作。

6.配置环境,
我的电脑>属性>高级>环境变量>用户变量里面设置几个变量:
PATH中增加C:\Qt\4.2.3\bin(如果没有就创建),
创建QMAKESPEC值为 win32-msvc2005,这个值还是根据你要生成的Vs版本,6.0 使用win32-msvc, 2003 使用win32-msvc.net, 2005就是 win32-msvc2005   
创建QTDIR值为 C:\Qt\4.2.3
如果你机器上安装多个版本的QT,就通过这三个环境变量来切换了,我同时有C:\Qt\4.0.0,那么就把那些前缀都换成C:\Qt\4.0.0,就使用4.0了。最后为了使的你刚才修改的环境变量生效,重启cmd,可以通过C:\> qmake -v来看你使用的QT版本。

7.整个程序测试下hello.cpp
#include <QApplication>
#include <QLabel>

int main(int argc, char **argv) {
  QApplication app(argc, argv);
  QLabel *label = new QLabel("Hello World!");
 
  label->show();

  return app.exec();
}

执行
C:\> qmake -project -t vcapp -o projectname.pro
C:\> qmake
在目录下面会生成projectname.vcproj,有这个就可以使用VS打开了,剩下的和普通的C++程序一样编译,运行,调试好了。

以上基本上可以开发简单的程序了,如果需要使用opengl等其他的,自己google下吧。有米的人也可以直接购买QT的商业版,可以直接集成到VS里面去,有向导等东西。我使用Qt4.0的还是比较爽的。
自己有时间好好看看examples里面的例子,开发的时候也可以作为参考,很好的资料。
几个链接大家逛逛
http://www.trolltech.com
http://www.qtnode.net/wiki/Main_Page
http://www.qtopia.org.cn/phpBB2/
 

如果图片或页面不能正常显示请点击这里
C++技术文章推荐文章

文章评论