在vc++、vs2005下配置qt的编译环境

 安装文件我使用的是《C++ GUI QT3编程》所附带光盘中的windows版的安装程序,当然大家也可以使用别的windows版本,和安装一般的应用程序没有什么分别的。不过注意在安装的过程中最好不要安装在中文的目录下,否则可能造成安装失败的,这里我选择的是d:/study/路径。中间需要指出你的visual studio的路径,一般都在c盘下,这个自己找吧。

          安装成功后,就可以打开vc了,建立一个工程和源文件,输入如下代码:

#include<qapplication.h>
#include<qlabel.h>
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QLabel *label=new QLabel("hello,qt!",0);
app.setMainWidget(label);
label->show();
return app.exec();
}

然后就是设置运行的目录了,在c++的工具菜单中选择选项-〉目录

然后分别添加新的include目录为d:/study/qt3.0/include

添加新的library目录为d:/study/qt3.0/lib

然后比较关键的一步就是调出qt的工具栏,工具-〉定制-〉附加项和宏文件中勾选Qmsdev developer studio,然后关闭。

网上常见的方法中,常常会在工程-〉设置-〉连接中添加一些lib文件,其实根本没有这个必要,这样做不仅可能导致失败,而且即使成功也很麻烦。每次编译新程序都得手工添加。做到以上这些点的话,然后单击qt工具栏中的倒数第二个按钮,告诉编译器你要在这个程序中使用qt。此时就可以成功的编译了。没有进行这个操作的时候,连接时会出现诸如:

Debug/df.exe : fatal error LNK1120: 146 unresolved externals

的错误。点击按钮后在左边的文件试图中会多出一个外部连接库的文件夹,其实这个按钮的意思就是自动的将一些连接库给你添加到vc中了,不信的话你可以再打开工程的设置-〉连接,就可以看到这是的lib已经变了很多。这样的话就可以再vc下轻松的编译qt了。

我也是一个初学者,大家如果发现什么错误的话请多多指教,平时也可以到这里和我交流。希望大家把自己的平时的经验都共享出来,好让学习qt的新人少走写弯路。

下面是我在网上搜集的一些关于这个主题的资料文档,如果上面的方法行不通的话,希望下面的资料对大家有帮助。以下文档版权归原作者所有。

资料一、

如何在vc2005下编译和使用Qt 4.2.0

简介

在本文中,我将一步一步地讲解如何在vc2005下编译Qt以及简单介绍如何在vc2005下使用Qt

先决条件

1 Vc2005。任何一款的vc2005编译器都可以,甚至是Express Edition

2 下载QtOpenSource版本。http://www.trolltech.com/developer/downloads/qt/windows

3 下载unofficial patch for QT4http://sourceforge.net/project/showfiles.php?group_id=49109

下载其中的acs 4qt 42p3.zip

环境变量的设置

将Qt解压缩到D:/QT/
           
           
            
            4.2.0
           
           。设置环境变量QTDIR=D:/qt/4.2.0。
设置QMAKESPEC=win32-msvc2005。下面我用%QTDIR%代表D:/qt/
           
           
            
            4.2.0
           
           
Vc2005装在D:/Program Files/Microsoft Visual Studio 8/ 

第一步 Apply qt-win patch

将acs
           
           
            
            4qt
           
           42p3.zip解压缩到%QTDIR%, 打开命令行窗口并且移动到%QTDIR%,运行installpatch42.bat。
D:/lib/qt/
          
          
           
           4.2.0
          
          >installpatch42.bat
会看到输出类似如下:
patching file qconfigure.bat
patching file examples/threads/waitconditions/waitconditions.pro
patching file misc/bcc32pch/Makefile.win32-borland
... 
检查看是否输出还有错误,如果没有错误,说明patch is applied correctly.
 第二步 使用vc2005编译后Qt4
1运行vsvars32.bat来为vc2005设定环境变量。
D:/lib/qt/
          
          
           
           4.2.0
          
          >"D:/Program Files/Microsoft Visual Studio 8/Common7/Tools/vsvars32.bat"
Setting environment for using Microsoft Visual Studio 2005 x86 tools. 
2.运行qconfigure.bat来指定vc2005。
D:/lib/qt/
          
          
           
           4.2.0
          
          >qconfigure.bat msvc2005
 This is the Qt/Windows Open Source Edition.
 You are licensed to use this software under the terms of
the GNU General Public License.
 Type '?' to view the GNU General Public License.
Type 'y' to accept this license offer.
Type 'n' to decline this license offer.
 Do you accept the terms of the license? 
输入y,回车 ,在以后的跳出的问句,均输入y回车。
如果没有出错,最后显示
You are now ready to build Qt <msvc2005>
If you specified –static or only want to build the Qt library, type ………
然后输入nmake sub-src进行编译,如果没有错则编译完成。
 第三步 设置环境变量
打开我的电脑---高级-----环境变量
添加新项QTDIR=D:/qt/
           
           
            
            4.2.0
           
           
在PATH中添加D:/qt/
          
          
           
           4.2.0
          
          /bin

vc2005中打开Tools---Option对话框,设置如下:
http://wiki.qgis.org/qgiswiki/Building_QT_4_with_Visual_C%2B%2B_2005?action=AttachFile&do=view&target=msvc-include-path-settings.png

http://wiki.qgis.org/qgiswiki/Building_QT_4_with_Visual_C%2B%2B_2005?action=AttachFile&do=view&target=msvc-lib-path-settings.png





Qt在VC2005下应用简单示范在E盘下建立文件夹test,建立test.cpp文件,写入:
#include <QApplication>#include <QLabel>
int main(int argc, char *argv[])
{     
QApplication app(argc, argv);     
QLabel *label = new QLabel("Hello Qt!");     
label->show();     
return app.exec();
}
在命令行中移动到E:/test
依次输入
:
qmake -project
qmake -project -t vcapp -o projectname
qmake projectname

其中projectname为项目名,可以为任意你输入的值。这是test文件夹下产生了*.vcproj,即可由vc2005打开编译运行

资料二、

我用的是WINXP,VC6,安装了QT    noncommercial版本,readme里面详细介绍了利用VC开发QT的做法,这样说的   
   1. Start    Visual    Studio    if    it    isn't    already    running.     
   2. Click    Tools|Customize    to    launch    the    Customize    dialog.     
   3. Click    the    Add-ins    and    Macro    Files    tab.     
   4. Ensure    the    checkbox    to    the    left    of    the    "QMsDev    Developer    Studio-Add-In"    add-in    is    checked.   
   5. Click    Close.     
  
但是我在QT的按照包里面怎么也找不到这个add-in,这是怎么回事.

资料三、

【原创】Qt 3.3.5 for win 在msvc下编译实例 [打印本页]

我不知道大家都是怎么装的,反正我花了好多时间才搞定。

我找到的QT 3.3.5 版,显然这不是最新的,不过因为最新的需要用mingGW,而我的导师似乎不是很乐意我用非VC的东西,所以我只好用了这个老版本。另外听坛子里人说4.0.1designer不像3.3.5一样提供代码编辑器,我想不提供编辑器总是很不爽的,不过因为还未试过,也不知道那个编辑器到底有用没。

首先下载QT3.3.5 for win:
3.3.5 for win
看起来是一个通过cygwin移植到windows里的kde下的版本。我在sourceforce找到过3.3.3-2 .exe 直接安装版本,http://sourceforge.net/project/showfiles.php?group_id=49109,但似乎这个编译后的版本没有加入需要的一些插件,使得安装后的designer提示找不到编辑代码的插件。

因此我决定自己从src编译,sourceforce上有3.3.4版的源代码,
3.3.5版本可以在这里找到:
http://webdev.cegit.de/snapshots/qtwin/
找最新的下载(最新的更新竟然就比这篇帖子早4天!),解压之后就可以准备用msvc.net编译了。

然后我们开始准备编译这个sanavabitch:
我不知道看官的msvc是怎么设置环境变量的,但我的msvc.net十分恶劣地把

INCLUDE
LIB设置到了vc.net下一个sdk/1.1/的目录里,这将导致执行configure-msvc.net.bat后系统提示找不到各种.lib.h。因此我们需要做的是在执行configure之前设定合适的环境变量:
set INCLUDE=C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK/include;C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/include;c:/QT/QT-3/misc/include
以及
set LIB=C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK/Lib;C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/Lib
以及
set QTDIR=c:/QT/QT-3
以及
set path=%path%;Visual Studio .NET 2003/Vc7/bin;C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK/bin

设定好了就可以顺利编译拉!
执行:
configure-msvc.net.bat

编译好了之后有两个选择:
A
,自己创建各种编译环境并手工添加到我的电脑-〉属性-〉高级-〉环境变量
B
,偷懒的做法,下载一次sourceforce上拿到的那个 QT3.3.3-2.exe安装版,运行安装到你最终想要安装的目录,然后把你自己编译的那个完整版拷贝过去覆盖那个不完整的版本……

之后要把新装好的QT集成到msvc中,这也有两种做法:

A
,在每次新建project的属性里添加include目录和lib目录
B
,我的做法是将这些目录添加到默认属性里——msvc->tools->options->projects->VC++ Directories里分别添加好QTinlcude, bin lib目录

重起,结局一切正常,目前正在workout怎么把designer集成到msvcide

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值