vs2010 使用QT

2023-10-31

首先不要使用中文目录,

 

1 下载Qt的安装包和VS2010的Qt插件

2. 安装Qt SDK

3. 安装Qt的VS开发插件

4. 编译Qt

Qt默认使用mingw进行编译,如果要使用VS2010开发,需要将Qt重新编译。

进入开始菜单Microsoft Visual Studio 2010,Visual Studio Tools,Visual Studio Command Prompt (2010),需要注意的是,这里面必须是使用Visual Studio Command Prompt (2010),不能使用CMD的Dos窗口

进入Qt的安装目录后,执行CD Qt,进入Qt的根目录

image

运行命令 configure -platform win32-msvc2010

o(选择opensource模式)回车,Y(同意license)回车

image

接着就会自动配置Qt的编译环境,等配置结束后,运行nmake,回车,Qt就会开始漫长的编译过程,这段时间非常长,需要4个小时以上,大家可以在晚上睡觉的时候进行编译。

 

我在编译的时候有两次错误需要处理,解决方法如下

编译大概1个小时之后,出现:

01.api/qscriptextensionplugin.h(43): Error: Undefined interface
02.NMAKE : fatal error U1077: 'C:/Qt/2009.05/qt/bin/moc.exe' : return code '0x1'
03.Stop.
04.NMAKE : fatal error U1077: '"d:/Program Files/Microsoft Visual Studio 9.0/VC/BIN
05./nmake.exe"' : return code '0x2'
06.Stop.
07.NMAKE : fatal error U1077: 'cd' : return code '0x2'
08.Stop.
api/qscriptextensionplugin.h(43): Error: Undefined interface
NMAKE : fatal error U1077: 'C:/Qt/2009.05/qt/bin/moc.exe' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"d:/Program Files/Microsoft Visual Studio 9.0/VC/BIN
/nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.

以上是出错代码,解决方法是将

qt/src/script/tmp/moc/debug_shared/mocinclude.tmp
qt/src/script/tmp/moc/release_shared/mocinclude.tmp

删除,然后继续编译。

过了很长时间之后,在编译webkit部分的代码时,会发生错误,系统会停止编译
D:/tools/Qt/2010.05/qt/src/3rdparty/webkit/WebCore/tmp/moc/debug_shared/moc_Sock
etStreamHandlePrivate.cpp(97) : error C2065: “QSslError”: 未声明的标识符
D:/tools/Qt/2010.05/qt/src/3rdparty/webkit/WebCore/tmp/moc/debug_shared/moc_Sock
etStreamHandlePrivate.cpp(97) : error C3861: “socketSslErrors”: 找不到标识符
正在生成代码...
NMAKE : fatal error U1077: “"D:/tools/Microsoft Visual Studio 10.0/VC/BIN/cl.EX
E"”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “"D:/tools/Microsoft Visual Studio 10.0/VC/BIN/nmake
.exe"”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: 返回代码“0x2”
Stop.

解决方法是将

qt/src/3rdparty/webkit/WebCore/tmp/moc/debug_shared/mocinclude.tmp
qt/src/3rdparty/webkit/WebCore/tmp/moc/release_shared/mocinclude.tmp
删除之后可以继续编译(重新执行nmake命令)

 

然后编译就可以正常了。

 

下面是配置vs2010

5.配置VS2010的Qt开发环境(VS2010最好是英文版本,Qt对VS2010中文版本可能支持的不好)

等Qt编译好后就可以配置VS2010的开发环境了,进入VS2010,选择Qt菜单,Qt Option,进入下图界面

image

  点击Add,添加Qt的安装目录

此时我又遇到了一个问题,QT in the given path was built using minGW

解决方法如下

删除lib目录下面的libqtmain.a and libqtmaind.a 文件即可

 

清理前,切记把 qmake.cache和configure.cache备份到别的地方,然后

nmake confclean 腾出空间。
最后再把 qmake.cache和configure.cache 复制回远处

  如果不这样,安装 qt-vs-addin 后进行 Qt Versions 添加路径时将失败。

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vs2010 使用QT 的相关文章

  • 具有多个父项的 Qt 树模型

    我想构建一棵树 其中一个元素可以引用另一个元素 我想要构建的树是 像这样的东西 A B C D E F P this is a pointer to C D first child of C E second child of C I fo
  • gnuplot:第 1 行:无效命令

    stackoverflow 上可爱的人们大家好 我正在尝试使用 gnuplot 绘制数据 我首先阅读表格并提取我想要的数据 我将此数据写入 dat 文件 截至目前 我只是尝试通过命令行绘制它 但会添加必要的代码以在 python 脚本工作后
  • SWI-Prolog 与 C++ 接口的问题

    我试图让 SWI Prolog 与 C 很好地配合 现在束手无策 现在 在我开始准确解释我的问题是什么之前 我想首先说明我的项目是关于什么的以及我选择了哪些工具来开发解决方案 我的教授分配给我的任务是开发一个 GUI 程序 作为 SWI p
  • 如何为 qmlRegisterSingletonType 实现单例提供程序?

    我想在 QML 中使用 C 类作为 Singleton 实例 并认为我必须使用 qmlRegisterSingletonType 注册它们 此函数需要一个提供已注册 C 类的实例的函数 我在 Windows 上使用最新的 Qt 5 3 1
  • PyQt - 如何从给定的小部件获取顶级父级?

    给定的小部件如何访问它最旧的父级 即顶级小部件 我需要 showMinimized it 现在我正在使用 self parent parent parent showMinimized 但这似乎不是最好的方法 如果它移动了 我需要手动更改父
  • new 运算符(以及 malloc)无法分配约 450 MB 的内存 [重复]

    这个问题在这里已经有答案了 我正在开发一个程序 该程序在内存中存储大约 2 2 亿个短值的数组 该数据块的分配方式如下 short arrayName new short SIZE OF ARRAY 然后将文件的内容读入内存 在团队中的另一
  • QMutex 是否需要是静态的,以便此类实例的其他线程调用知道暂停其操作?

    从多个线程调用以下附加函数 我不希望数据重写附加 因为计数器尚未增加 除了当前使用 Append 的线程之外 这是否会挂起所有进入的线程 或者其他线程会继续运行而不追加数据吗 互斥锁是否需要是 静态 的 或者每个实例都知道要暂停操作吗 如果
  • QStyledItemDelegate 绘制自定义小部件失败

    在我的一个项目中 我使用的是QTableWidget为了显示一些复杂的计算结果 为了提高表格的可读性 我需要在单个表格单元格内显示两个对齐的值 后来我想通过使用颜色或箭头等来进一步自定义小部件 为此我源自QStyledItemDelegat
  • 获取 QListView 中所有可见项目的简单方法

    我正在尝试使用 Qt Framework 开发一个图像库应用程序 应用程序从所选文件夹加载所有图像 并使用 QListView 控件显示这些图像 但现在我想通过仅加载用户可见的图像来减少内存消耗 由于没有直接函数来获取视图中的所有可见项目
  • Qt 为什么使用 QString::number() 而不是 QLocale().toString()?

    我正在开发的应用程序将在许多国家推出 并且需要支持他们的语言 我一直在回顾我的代码并替换以下每个实例 QString number and QString toDouble with QLocale toString and QLocale
  • “bash -c 命令参数”末尾的参数的目的是什么?

    From man bash If the c option is present then commands are read from the first non option argument command string If the
  • 完全彻底卸载QT Creator

    问题 如何从 Linux 机器上卸载 QT Creator 我的 Debian Jessie 机器上的安装已损坏 我尝试过重新安装 修复等 但没有成功 建议我完全卸载 获取最新版本并重新安装 问题是我不确定如何执行此操作 每次我尝试时 QT
  • 如何声明一个带有成员函数指针的函数

    我有一个类 其中的成员变量指向库对象 class myClassA private libraryClass libraryObject 该库类发出事件 以字符串为特征 并提供一种机制 允许客户端类指定在发出事件时应调用的成员函数 因此在m
  • 在Java中执行.lnk文件

    我需要在java中执行 lnk文件 指向exe文件的lnk文件 我能怎么做 在 VB net 中我做 Process Start path 它有效 谢谢你的帮助 Use a 流程构建器 http download oracle com ja
  • Qt中Q_PROPERTY的意义是什么?

    我无法理解 Q PROPERTY 的用法 Q PROPERTY 如何帮助程序具有防御性 它是干什么用的 我看过这个论坛 但确实无法应用 我已经理解了这个例子 但不明白它的用法 这是一个例子 我能从中得到什么 我知道阅读将赋予只读特权 wri
  • Qt中用于线程间通信的类设计

    问题陈述 用相机跟踪物体并相应地移动相机的方位角和仰角 Process 相机获取物体的图像 处理相机的每一帧以查找物体 应该被跟踪 并将每帧中生成的信息传递给机械设备 万向节 以平移和倾斜方式移动摄像机 Design 主 Gui 在一个线程
  • Qt(在 Windows 上)将权限级别设置为“requireAdministrator”

    我正在使用 Qt Creator 并努力制作 exe文件默认以管理员身份运行 在线阅读所有解决方案我试图将这一行放入我的 pro file QMAKE LFLAGS MANIFESTUAC level requireAdministrato
  • Qt 支持 Windows 蓝牙 API 吗?

    谁能告诉我 Qt 是否支持 Windows 蓝牙 API 如果是这样 您能否分享一些有关如何使用它的信息 自上次答复以来 这个问题的答案发生了一些变化 Qt 5 2 版为 Linux BlueZ 和 BlackBerry 设备实现了蓝牙 A
  • Q风格所有权

    在 Qt 应用程序中使用样式时 我遇到了一个有趣的问题QStyle所有权 QStyle继承自QObject 通常接受QObject parent作为构造函数参数来管理其子级的生命周期 但QStyle的构造函数没有此构造函数参数 第一个问题
  • 在 Qt 中自动调整标签文本大小 - 奇怪的行为

    在 Qt 中 我有一个复合小部件 它由排列在 QBoxLayouts 内的多个 QLabels 组成 当小部件调整大小时 我希望标签文本缩放以填充标签区域 并且我已经在 resizeEvent 中实现了文本大小的调整 这可行 但似乎发生了某

随机推荐

  • JS 页面显示图片

    HTML页面 div class mini datagrid div div div
  • 程序员失业2个月找不到工作,狂刷了5遍这份pdf终获字节跳动offer

    写在前面 1月初失业 找了近2个多月的工作了 还没找到心仪的工作 感觉心好慌 不知道该怎么办了 找不到工作的时候压力很大 有人说自信会很受打击 还有人说会很绝望 是人生的低谷 尽管很多时候我们自己知道 我不是找不到工作 只是找不到理想中的好
  • 有源光网络VS无源光网络

    有源光网络 AON Active Optical Network 有源光网络 是指信号在传输过程中 从局端设备到用户分配单元之间采用光电转换设备 有源光电器件以及光纤等有源光纤传输设备进行传输的网络 有源光器件包括光源 激光器 光接收机 光
  • 助力游戏开发者,看 Google 有哪些“上新”?

    Cloud Ace 是谷歌云全球战略合作伙伴 拥有 300 多名工程师 也是谷歌最高级别合作伙伴 多次获得 Google Cloud 合作伙伴奖 作为谷歌托管服务商 我们提供谷歌云 谷歌地图 谷歌办公套件 谷歌云认证培训服务 官网 http
  • docker: Error response from daemon: driver failed programming external connectivity on endpoint lamp

    Docker容器做端口映射报错 docker Error response from daemon driver failed programming external connectivity on endpoint lamp3 46b7
  • 【C语言精讲】——代码调试方法

    1 调试 调试 Debugging Debug 又称除错 是发现和减少计算机程序或电子仪器设备中程序 错误的一个过程 1 1 调试的基本步骤 发现程序错误的存在 以隔离 消除等方式对错误进行定位 确定错误产生的原因 提出纠正错误的解决办法
  • node.js 与 redis 与 express 和session协同工作

    var RedisStore require connect redis express var redis ip 192 168 238 135 redis port 6379 app use express session secret
  • 基于 Opencv python实现批量图片去黑边—裁剪—压缩软件

    简介 批量处理图片文件 批量提取GIF图片中的每一帧 具有范围裁剪 自动去除黑 白边 调整大小 压缩体积等功能 先看一些软件的界面 是基于Tkinter写的GUI 裁剪等功能基于Opencv 下载 我添加了处理GIF的github 原作者的
  • codeStriker(及与svn、bugzilla集成)使用过程记录 续

    下面是codeStriker与svn bugzilla集成使用的脚本 放在codestriker安装目录的bin下 usr bin perl w Create codestriker topic based on subversion co
  • linux后台开发必知的io优化知识总结

    尊重原创版权 https www hanzhangsy com hot 105435 html 更多内容参考 https www hanzhangsy com linux后台开发必知的io优化知识总结 系统学习 IO性能对于一个系统的影响是
  • lua堆栈

    首先了解下c 与lua之间的通信 假设在一个lua文件中有如下定义 hello lua 文件 myName beauty girl 请注意红色数字 代表通信顺序 1 C 想获取Lua的myName字符串的值 所以它把myName放到Lua堆
  • 计算机算法常用术语中英对照(分为两部分 其中一部分表格形式 )

    第一部分 Data Structures 基本数据结构 Dictionaries 字典 Priority Queues 堆 Graph Data Structures 图 Set Data Structures 集合 Kd Trees 线段
  • Python实现子线程代码“同时”执行完毕后,再执行后续函数模块

    在python中用多线程完成任务时 在后面添加了一个提醒函数 结果发现线程开启后提醒函数就触发了 解决方法 将多线程join 起来 就会跑完所有多线程任务再执行后续的函数模块 join 的使用方法 import threading impo
  • pgsql:获取分组中最大或最小的一条数据

    步骤1 查询并排序各分组的记录 sql的查询语句如下 SELECT tb curr read tb arch id ROW NUMBER OVER PARTITION by arch id ORDER BY year month desc
  • AWS实例3T磁盘初始化分区及docker环境部署

    文章目录 一 背景说明 二 磁盘分区 2 1 安装分区工具 2 2 查看是否存在数据盘 2 3 使用Parted工具为数据盘进行分区 2 4 系统重读分区表 2 5 为 dev vdb1分区创建文件系统 2 6 挂载磁盘 三 安装docke
  • Qt进行CSV文件操作

    Qt操作csv文件 csv文件简述 逗号分隔值 Comma Separated Values CSV 有时也称为字符分隔值 因为分隔字符也可以不是逗号 其文件以纯文本形式存储表格数据 数字和文本 纯文本意味着该文件是一个字符序列 不含必须像
  • X86指令:NOP指令

    NOP指令的作用 通常NOP用于对齐指令的地址 NOP指令的特性 因为NOP是X86指令中最短的 只有1byte 处理器执行NOP指令时 不进行任何的操作 不会影响系统的状态 NOP也有其他的用途 1 编程时如果使用了支持lable标记的编
  • javascript函数相关例题

    前言 虽然for也能实现一些简单的 重复操作 但是 比较具有局限性 我们js 里面 也有非常多的相同代码 可能需要大量重复使用 此时我们可以利用函数 一 函数是什么 函数 就是 封装了 一段 可被重复调用执行的 代码块 可以实现大量代码的重
  • 删除git在windows上的凭证

    由于本人安装git的客户端以及开始下载github上的项目代码 第一次输入的账户名以及密码错误 需要删除windows上自己保存的账号密码凭证 我自己的电脑配置 运用命令行打开控制面板也十分方便 快捷键 Win R 打开运行窗口 输入 co
  • vs2010 使用QT

    首先不要使用中文目录 1 下载Qt的安装包和VS2010的Qt插件 2 安装Qt SDK 3 安装Qt的VS开发插件 4 编译Qt Qt默认使用mingw进行编译 如果要使用VS2010开发 需要将Qt重新编译 进入开始菜单Microsof