Qt在VC环境下搭建以及编译

QT调VC的DLL实验总结 Qt5中动态链接库的创建和使用 阅读详情

一、安装

 

1.在Trolltech.com上下载一个Windows环境下可使用的Qt原码包,如qt-win-opensource-src-4.3.4.zip,并解压缩(如解压缩至F:/Qt-4.3.4)

2. 添加系统环境变量,在PATH中添加qt的bin路径(F:/Qt-4.3.4/bin),添加新的变量QTDIR(QTDIR=F:/Qt-4.3.4),再添加新变量QMAKESPEC=win32-msvc。

3. 运行cmd打开一个dos窗口,进入vc6的vc98/bin中执行vcvars32.bat,

4. 进入qt主目录,执行:configure,选‘y’,等待

5. 再执行nmake,等待,时间比较长

 

二、使用

 

先用记事本或者VC写一段Qt程序,如hello.cpp

#include <QApplication>

#include <QPushButton>

int main(int argc, char* argv[])

{

      QApplication app(argc, argv);

      QPushButton hello("Hello world!");

      hello.resize(400,300);   

      hello.show();

      return app.exec();

}

放在E盘的hello文件夹中(工作目录可以随意选择),然后执行编译链接过程,具体如下:

E:/>hello>qmake -project       //意思是创建一个和平台无关的项目文件

E:/>hello>qmake hello.pro      //根据上一步产生的项目文件创建一个平台特定的makefile

E:/>hello>qmake -tp vc hello.pro  //通过hello.pro创建一个VS的项目文件

E:/>hello>nmake              //编译链结程序

在生成XXX.pro的工程文件后,可以执行qmake -tp vc XXX.pro生成vc的XXX.dsp文件,就可以在vc中进行qt文件的编译和操作了,很方便地在不同系统中进行程序移植了

 

////////////////////////////////////////////////////////////////////////////////////////////////////

Qt是一个跨平台的C++图形用户界面库,由挪威TrollTech公司出品,Qt支持所有的UNIX系统,包括Linux系统,还支持WinNT/Win2k、Windows 95/98平台。

  本文将使用简单的几个步骤说明在VC 2005下如何编译安装并开发QT应用程序:

一、下载及安装

1. 从官方网站http://trolltech.com/lang/cn/downloads/open-source-downloads下载QT最新版本源代码,ftp://ftp.trolltech.com/qt/source/qt-win-opensource-src-4.4.0.zip,假定解压到D:/Qt/4.4.0目录;

2.  从VC 2005的安装路径找到vsvars32.bat,例如:在E:/Program Files/Microsoft Visual Studio 8/Common7/Tools,运行cmd,

C:/> E:
E:/> "E:/Program Files/Microsoft Visual Studio 8/Common7/Tools"
E:/Program Files/Microsoft Visual Studio 8/Common7/Tools> vsvars32.bat
E:/Program Files/Microsoft Visual Studio 8/Common7/Tools> D:
D:/> cd D:/Qt/4.4.0
D:/Qt/4.4.0> configure -debug-and-release -static
D:/Qt/4.4.0> nmake

       configure -debug-and-release -static参数的意义是告诉QT同时编译为Debug和Release两个版本的静态链接库,不指定参数则编译为Debug版本的动态链接库。configure大约需要十几分钟,nmake则大约需要1小时左右,视你的电脑性能而定。

3. 将Qt路径添加到VC编译环境中,工具->选项->项目和解决方案->VC++目录,在包含文件一栏添加: D:/Qt/4.4.0/include/QtGui;D:/Qt/4.4.0/include/QtCore;D:/Qt/4.4.0/include,在库文件一栏添加D:/Qt/4.4.0/lib;将QT安装路径添加到Path系统环境变量中,例如:D:/Qt/4.4.0/bin;

二、交叉编译

1. 启动VC,创建一个Hello Qt工程,将工程设置改为使用多字节字符集,因为Qt Application的入口函数不是Unicode的;

2. 启动Qt Designer,新建窗体->选择对话框窗体(第一个选择项),在新建的对话框上面放一个Label控件,将其Title修改为“Hello Qt!”,将该窗体保存到刚才用VC建立的Hello Qt工程目录,文件名为Hello.ui;

3. 将Hello.ui作为源文件添加到Hello Qt工程中,在Hello.ui上点击右键->属性,在属性对话框中选择自定义生成步骤->常规,在命令行一栏输入:uic.exe Hello.ui -o HelloUi.h,说明一栏输入:正在编译Hello.ui ,在输出一栏输入:HelloUi.h,在附加依赖项一栏输入:uic.exe;Hello.ui,点击确定;

     注意:也可以不使用手工添加方式添加编译ui文件,直接使用qmake编译成VC工程,但这样会破坏原来的工程设置,因为当ui文件修改或添加新的ui后需要重新qmake,重新生成VC工程,因此这里采用了手工添加并设置编译脚本的方式,qmake的用法如下: 
D:/Hello Qt> qmake -project -t vcapp -o HelloQt.pro
D:/Hello Qt> qmake
不需要指定ui文件,qmake会将当前目录所有的ui文件以及C++文件创建一个VC工程。另外QT 4.4是对VC各个版本都兼容的,VC6、VC2003、VC2005、VC2008,编译安装步骤都是一致的。

4. 在Hello.ui上点击右键->编译,将在当前工程目录生成HelloUi.h文件;

5. 打开Hello Qt.cpp,在main函数添加启动代码,完整代码如下:

// Hello Qt.cpp : 定义控制台应用程序的入口点。

#include "stdafx.h"
#include "HelloUi.h"   // ui文件编译生成的C++文件
#include <QApplication>

int _tmain(int argc, _TCHAR* argv[])
{
 QApplication app(argc, argv);
 QDialog * dlg = new QDialog();  // Qt 窗口对象会自动回收所有的子窗口对象,这里的dlg将被作为最外层窗口,将由QApplication进行回收,因此Qt窗口只能在堆分配对象,且不必使用delete。

 Ui::Dialog ui;   // Dialog为ui文件编译生成的C++类,参见HelloUi.h
 ui.setupUi(dlg);

 dlg->show();

 return app.exec();
}

在工程设置附加依赖项中添加QtCore.lib QtGui.lib,编译工程,运行即可出现Hello Qt程序。

Windows程序里面的消息机制,在MAC平台则是苹果事件,各平台的驱动方式各异,Qt则将这些不一致的平台机制统一起来,形成了信号和槽机制,来处理各种系统事件,以实现跨平台的目的,因此Qt程序几乎不经过任何修改,便可以在其它平台编译通过。

/////////////////////////////////////////////////////////////////////

 

QT4.3.0在VC++ 6.0下安装指南

 

////////////////////////////////////////////////////////////////////////////////////

参考了一些资料,把自己在vc6.0下安装qt的过程和大家一起分享一下.
1 编译QT

  1)下载QT的源代码文件包(注意:必须是.zip后缀的,.exe后缀的包是用mingw做编译器的源代码文件)。

  2)将QT源代码解压到硬盘。

    例如: C:/Qt/4.3.0/ 或   C:/Qt/4.3.0-msvc/ 

2 下载并安装允许QT用vc编译的补丁。

  1)从网站 sourceforge.net下载acs-4.3.0-patch2.zip 。

  2)将其解压到QT源代码的目录下。

3 打开命令行工具,并把路径切换到QT源代码的目录下。

  运行cmd.exe,然后切换到路径到C:/Program Files/Microsoft Visual Studio/VC98/Bin(VC路径),运行vcvars32.bat ,设置vc6.0编译文件的路径。

  确保环境设置正确的方法是看看nmake.exe是否在路径中:

D:/Qt/4.3.0> nmake /?

Microsoft (R) Program Maintenance Utility Version 6.00.8168.0

Copyright (C) Microsoft Corp1988-1998.  All rights reserved.

Usage:  NMAKE @commandfile
        NMAKE [options] [/f makefile] [/x stderrfile] [macrodefs] [targets]

Options:

4 给QT源代码打补丁

运行D:/Qt/4.3.0> installpatch43.bat

将会看到下面的一些内容:

D:/Qt/4.3.0> installpatch43.bat
patching file qconfigure.bat
patching file examples/threads/waitconditions/waitconditions.pro
patching file misc/bcc32pch/Makefile.win32-borland
patching file misc/bcc32pch/bcc32pch.cpp
patching file misc/bcc32pch/bcc32pch.pri
patching file misc/bcc32pch/bcc32pch.pro
patching file mkspecs/win32-bccx/qmake.conf

5 安装QT

  如果不清楚使用什么选项,可以运行configure-opensource.exe 

  然后运行D:/Qt/4.1.1>qconfigure.bat msvc

  开始的时候会提问是否接受GPLlicence,输入y。然后就是漫长的等待了。
据说编译期间会出现一个错误(不过我没有遇到),fatal error C1083: Cannot open include file: 'uxtheme.h': No such file or directory

提示Uxtheme.h 和Tmschema.h找不到,而Schemadef.h是在Tmschema.h里调用的,所以还需要另外三个文件,这在VC6里面没有,包含在Windows PlatformSDK安转了Visual Studio 2003或 Visual Studio 2005 中都有PlatformSDK。若安装过,就不必费尽去下载385.0 MB的SDK了,默认安装的话三个文件都在
C:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/Include
(Uxtheme.h 中定义了在向控件添加外观风格的步骤中以及在相应的代码示例中所引用的 UxTheme API;Tmschema.h 中定义了各个类。

可以到这里下载http://www.cnblogs.com/xcvm/archive/2006/03/08/346013.html

把这三个文件加到vc的include文件夹下,就可以通过编译了。

还有一个错误是NMAKE: fatal error U1077: 'cl.exe' : return code: '0x80' Stop

在网上搜了一下,有人说是内存不足的原因,我也遇到了,重启了一下电脑,只开了一个编译QT的窗口后就什么问题也没有了。

6 设置环境变量

PATH = D:/Qt/4.1.1/bin

QMAKESPEC = win32-msvc

然后重启一下.
检查路径设置的是否正确:

C:/> qmake -v
QMake version: 2.00a
Using Qt version 4.1.1 in D:/Qt/4.1.1/lib

C:/> echo %QMAKESPEC%
win32-msvc

至此,QT就安装好了。

下面用一个小程序测试一下

创建文件名为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();
}

然后

prompt> qmake -project -o hello.pro

prompt> qmake

prompt> nmake

就会在debug文件夹下生成一个.exe文件。

////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////////////////////////

这些足够拉,大家参考吧

Qt/C++ 基础知识 转载来源: https://blog.youkuaiyun.com/dd_hello/article/details/80516655 https://blog.youkuaiyun.com/vbskj/article/details/7792061 https://blog.youkuaiyun.com/aidam_bo/article/details/84111957 IDE:集成开发环境(Integrated Development Environment)是用于提供程序开发环境的应用程序,一般包括代码编辑器,编译器,调试器,图形用. 阅读详情

相关推荐

QT5 quazip解压缩文件-开发环境搭建(最详细)_quazip qt5

将前面编译好的zlib的lib拷到lib目录,我这里已经把我编译好的vs2017x64的库考进去了,如果是其他版本替换即可。将前面编译好的quazip.lib放入lib中,在quazib中搜索.h,将所有的.h复制到include中。可以直接在creator里面写一个界面程序,加上编译好的qualib进行测试,这里我就不说明了。提前安装好Qt5,和QtCreator,选择安装MSVC2015和MSVC2017的编译器。我喜欢在vs中安装qt5的插件,用vs进行调试,这是个人习惯。然后构建,构建成功,如下。

2401_85013810的博客 512

QT与VC的区别

QT与VC的区别 1. QT和VC目前最大的不同就是消息的管理  VC的不同对象之间发送消息是对象A发送一个消息给对象B就不管了,至于B对于此消息该什么响应函数来处理,由对象B自己定义的消息处理函数来响应;  而QT中,必须有一个平台来管理A-->B这个过程,它需要知道A发生了什么消息(signals),传给B后,还要通知B用什么消息处理函数(slots)来处理。  2. 在有自定义消息处理的类中

Augusdi的专栏 1万+

Qt源码在VC环境下编译(以VC14下Qt5.9.1和Qt5.4.0为例,包含icu和QtWebkit模块)

ICU57 + Qt5.9.1 + QtWebKit在VC14下编译编译所需工具 工具 下载地址 Qt Source https://download.qt.io/archive/qt/5.9/ VS Compiler https://docs.microsoft.com/en-us/visualstudio/install/create-a-network-installat

卓越森林 2574

Qt线程与VC线程区别个人理解

采用QObject特有的特性,每个继承至其的子类都可以通过moveToThread函数,将通过该子类定义的对象,移动到一个单独的子线程中 ,这样就将对象相关的操作可以都在子线程中独立运行。同时当子线程运行中时,对象当中的所有函数都可以通过信号槽机制,与其他线程进行数据交互。如果在该对象中有采用while死循环的方式实现费时计算,这时就需要考虑停止死循环的方式,由于一直在死循环过程中,同时又想执行该对象中的其他函数,这时就没法通过信号槽机制触发,除非停止死循环操作。同时各线程中数据相互独立运行。

BlueMan 2177

VC++ 下使用QT初步入门学习

QT生成VC项目文件;

bcbobo21cn的专栏 1569

Qt 4.8.7 32位静态库深入解析

Qt 是一个跨平台的 C++ 应用程序框架,广泛应用于开发图形用户界面(GUI)程序,同时也能够用于非GUI程序的开发。Qt提供了丰富的工具类库和API,旨在简化程序员的工作,尤其是在跨平台应用程序的开发中。静态库和动态库是程序开发中常用的两种库文件,它们在编译和运行程序时起到关键作用。在32位系统上进行程序开发时,需要深入了解并应对技术限制。通过遵循最佳实践、合理利用资源优化策略,以及进行彻底的测试,开发者能够确保其应用程序在32位系统上拥有更好的兼容性和性能表现。

weixin_35751194的博客 818

QT Windows开发 环境搭建

QT Windows开发 环境搭建 <br />QT Windows vs2005开发环境搭建<br />Qt源码包:qt-win-opensource-src-4.5.0.zip<br />Visual Studio 2005 SP1:VS80sp1-KB926604-X86-CHS.exe<br />Visual Studio QT插件:Qt Visual Studio Integration v1.43.zip<br />注:如果安装的是VS2008的,则不用打该Visual St

毛建会的专栏 1110

放弃FFT全频计算!在STM32F407上用DFT单点计算提速50%的优化技巧

本文详细介绍了在STM32F407上通过DFT单点计算实现比FFT快50%的优化技巧,特别适用于生物阻抗分析、振动监测等只需关注单一频点的嵌入式场景。通过预计算相位角、查表法和混合精度计算等策略,显著提升计算效率和内存利用率,同时保持高精度。

weixin_28738397的博客 194

vc++ 6.0 QT4.34 环境搭建

QT Windows开发 环境搭建  QT Windows vs2005 开发环境搭建 Qt 源码包: qt-win-opensource-src-4.5.0.zip Visual Studio 2005 SP1 : VS80sp1-KB926604-X86-CHS.exe Visual Studio QT 插件: Qt Visual Studio Int

sndybo的专栏 864

一篇文章将三极管讲透:三极管从原理到应用,从参数到特性,从入门到精通

晶体三极管(Transistor)是一种半导体电子器件,也是电子工程中最基本的元件之一。它有三个区域,分别是P型半导体,N型半导体和P型半导体,从而形成PNP型晶体三极管或者NPN型晶体三极管。

学习帮的博客 9万+

三相逆变器拓扑结构的分析及应用场景

三相逆变器是电力电子领域中广泛应用的一种设备,用于将直流电转换为交流电。不同的拓扑结构在性能、成本、复杂度和应用领域上存在差异。小编将在本文中将进一步拓展对三相逆变器拓扑结构的分析,并探讨其适用的应用场景。

道合顺的博客 2236

解析 VC 2005 下编译安装并开发 QT 4.4.3 应用程序

VC 2005 下编译安装并开发 QT 4.4.3 应用程序是本文要介绍的内容,一部分时从坛子里看的,一部分时心得,不多说,先来看内容。最近研究webkit,顺便研究了一下QT。发现网上流传的一个转帖《VC 2005 下如何编译安装并开发 QT 4.4.0 应用程序》Qt 是一个跨平台的C++图形用户界面库,由挪威TrollTech公司出品,Qt支持所有的UNIX系统,包括Linux系统,还支持W

Augusdi的专栏 2009

【从零开始学Skynet】基础篇(一):Skynet环境搭建

Skynet运行于Linux操作系统,我们可以在自己的电脑上搭建虚拟机系统,也可以购买阿里云、腾讯云服务器,笔者这个系列的所有代码都是在Ubuntu16.04版本的虚拟机系统下运行编辑。

我是一条寻水的鱼 3167

Qt开发环境搭建

Qt开发环境搭建分为两种方式,一种是基于vc编译器的msvc版本,另外一种是基于gcc(g++)的mingw版本,前者常用于windows系统,后者常用于linux系统,如果选择前者的话,还需另外安装qt-vs-addin,以便vs使用Qt Designer插件进行界面开发。另外Qt creator本身并没有自带调试器,需要自行下载安装包,并且调试很慢,这是很多Qt开发者诟病的地方,不过有一点值得一

Y673582465的专栏 1050

Dynamics CRM证书更换

  Dynamics CRM产品一般有两种认证方式。第一种是基于声明的内部访问也就是无证书单纯用账号密码验证。第二种就是联合身份认证,需要安装网站证书。   对于联合身份认证的情况因为需要安装证书,而且证书是有一个一年的有效期,所以运维人员每年都需要进行证书更换的操作。以下就是更换证书的方法及过程。 证书根据申请方式一般也分两种,第一种是自建证书,这种证书是没有机构认证的所以安装上之后网站因为没...

bzpfly的博客 877

Notion卡顿救星:3分钟搞定DNS优化,手机电脑全平台加速指南

本文针对Notion访问慢和卡顿问题,提供了全平台DNS优化与Hosts文件修改的详细指南。通过更换优质DNS服务器或建立静态IP映射,可有效解决因网络延迟和域名解析导致的加载缓慢,实现手机与电脑端的快速加速,提升Notion使用流畅度。

v6b7n8m9q0的博客 1306

Qt4.4.0+vc60在windows下安装配置

问题及解决: 在进行Qt的qmake和vc的nmake时,后者发现找不到文件。进行了一些尝试后没能解决,只是颠三倒四的在VC环境下下可以编译成功了。 今天又进行QT学习,仍然发现了这个问题,于是再搜搜。突然发现了这篇文档,很不错,如果当时能够发现,问题可能早就解决了。 其实就是:重新注册一下VC的环境变量,打开cmd控制台,进入D:\Program Files\Microsoft Visua

noodle123的专栏 2546

关于Sybase ASE数据库的license以及试用版过期的问题的解决方案

当用户从Sybase官网上下载了ASE15.0.2以后,如果选择了安装Express Edition或者Developer Edition,基本上不会碰到什么问题,除了有些功能受限以下。 但大多数可能选择了Enterprise Edition for Evaluation类型,即企业版试用。都会碰到这样的问题,即一个月以后,license过期,无法启动server。于是很郁闷,可能大部分人,会选...

iihero@优快云 791

Qt软件下载地址(开源,免费下载,解决方案)

Qt软件各个版本下载(从1到5系列) 包括64位,32位,单独使用版本mingw,和VS结合使用版本msvc,区别在于使用的编译器不一样。 msvc是指微软的VC编译器,MinGW是指是Minimalist GNU on Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows...

姗郁的博客 4008

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

最小的Windows VC++开发环境

一般经常重装电脑的开发者总会很心烦重装开发环境,安装时间长不说,配置也很麻烦。 WindowsSDK下载地址 http://www.microsoft.com/download/en/details.aspx?id=3138 http://www.microsoft.com/download/en/details.aspx?id=18950 我在安装WindowsSDK 那个大镜像时发

Vonger的专栏 5633

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Window + Vs(Vc6) + QT环境成功搭建

Window + Vs(Vc6) + QT环境成功搭建【更改转自】<http://blog.sina.com.cn/s/blog_5a8c0abf0100b3qw.h2009年08月25日 04:53 P.M.一、安装1.在Trolltech.com上下载一个Windows环境下可使用的Qt原码包;http://ftp.tu-chemnitz.de/pub/Qt/qt/source/qt-...

weixin_30342827的博客 166

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

QT开发环境配置

 ////////////////////////////////////////////////方法1///////////////////////////////////////////////1.下载必须的软件 QT         http://www.trolltech.net (QT的各种开发工具和类库) DEVCPP  http://www.bloodshed.net

明亮的专栏 1350

QT跨平台应用程序开发框架(1)—— 环境搭建

其实说是安装三个东西,其实只要安装一个Qt SDK,其它两个都有了。之后一路点击下一步即可,就是安装路径不要带中文,不要带特殊符号和空格。创建好项目后会预先生成一些代码,我们来讲解一下这些代码做了什么。Windows下还有哪些方案可以开发GUI?之后一路确认然后安装即可。

aaqq800520的博客 3890
上一篇: qt编程入门
下一篇: gdal进行几何校正代码
beck_zhou
博客等级 码龄19年 2152粉丝 510原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值