vs2010+qt4编译出现error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject等错误
1、当vs2010编译qt时会出现以下错误:
1>------ 已启动全部重新生成: 项目: MyDialog, 配置: Debug Win32 ------
1>生成启动时间为 2015/9/9 14:57:04。
1>InitializeBuildStatus:
1> 正在创建“Debug\MyDialog.unsuccessfulbuild”,因为已指定“AlwaysCreate”。
1>CustomBuild:
1> Moc'ing LoginDlg.h...
1>ClCompile:
1> LoginDlg.cpp
1> main.cpp
1> 正在生成代码...
1>LoginDlg.obj : error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall CLoginDlg::metaObject(void)const " (? metaObject@CLoginDlg@@UBEPBUQMetaObject@@XZ)
1>LoginDlg.obj : error LNK2001: 无法解析的外部符号 "public: virtual void * __thiscall CLoginDlg::qt_metacast(char const *)" (?qt_metacast@CLoginDlg@@UAEPAXPBD@Z)
1>LoginDlg.obj : error LNK2001: 无法解析的外部符号 "public: virtual int __thiscall CLoginDlg::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@CLoginDlg@@UAEHW4Call@QMetaObject@@HPAPAX@Z)
1>D:\VC++\QtT\MyDialog\\MyDialog.exe : fatal error LNK1120: 3 个无法解析的外部命令
1>
1>生成失败。
1>
1>已用时间 00:00:03.23
========== 全部重新生成: 成功 0 个,失败 1 个,跳过 0 个 ==========
2、出现以上错误的原因是由于在GeneratedFiles/Debug文件中缺少一个moc_XXX.cpp文件,如下图所示:

3、缺少的文件名是什么呢?那么首先要找到Q_OBJECT宏在那个头文件中,比如在上图中该宏在LoginDlg.h文件中,那么生成的文件时moc_LoginDlg.cpp,要生成此文件需要qt库中的一个moc.exe文件,如下图所示:

4、通过cmd进入到此目录中,然后执行:moc "D:\VC++\QtT\MyDialog\MyDialog\LoginDlg.h" -o "D:\VC++\QtT\MyDialog\MyDialog\moc_LoginDlg.cpp"
如下图所示:

5、然后会在D:\VC++\QtT\MyDialog\MyDialog\目录生成一个moc_LoginDlg.cpp文件,如下图所示:

6、将moc_LoginDlg.cpp文件拷贝到GeneratedFiles/Debug目录中,并在vs中添加该文件,如下图所示:

7、重新编译即可
vs2010+qt4编译出现error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject等错误的更多相关文章
- main.obj:-1: error: LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall CustomButton::metaObject(void)const " (?metaObject@CustomButton@@UBEPBUQMetaObject@@XZ)
QTCreator 运行时报错 main.obj:-1: error: LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject cons ...
- error LNK2001: 无法解析的外部符号 "public: virtual long __stdcall CBaseFilter(转)
原文转自 https://www.cnblogs.com/xiongjiaji/archive/2010/12/31/2476565.html 今天用VS2005编译DirectShow程序,发现出来 ...
- 虚函数 error LNK2001: 无法解析的外部符号 "public: virtual void __cdecl
在虚函数后面加一对大括号 #ifndef CAFFE_CONV_DW_LAYER_HPP_ #define CAFFE_CONV_DW_LAYER_HPP_ #include <vector&g ...
- 无法解析的外部符号 "public: virtual struct CRuntimeClass * _
SetupPropertyPage.obj : error LNK2001: 无法解析的外部符号 "public: virtual struct CRuntimeClass * __this ...
- error LNK2001: 无法解析的外部符号 "public: char * __thiscall
error LNK2001: 无法解析的外部符号 "public: char * __thiscall CamPinPadCtrl::KeysConvert(unsigned long,ch ...
- C++工程编译之“error LNK2001: 无法解析的外部符号”
今天一整天都在折腾“error LNK2001: 无法解析的外部符号”,就在头疼不已的时候,总算是找到问题原因了:各个动态链接库的编译方式必须统一才行,要不然很容易对库函数的引用产生冲突.简单来说就是 ...
- error LNK2001: 无法解析的外部符号 _IID_IDirectDraw7
工程使用了DirectDraw,编译出错 error LNK2001: 无法解析的外部符号 _IID_IDirectDraw7 解决办法是吧dxguid.lib添加到工程中,把lib所在目录添加到工程 ...
- 无法链接glew的解决办法-编译开源库出现: error LNK2001: 无法解析的外部符号
无法链接glew的解决办法-编译开源库出现: error LNK2001: 无法解析的外部符号 参考官方配置指南:http://glew.sourceforge.net/install.html 1. ...
- 引用rtmp编译报错:rtmp.obj : error LNK2001: 无法解析的外部符号 __imp__timeGetTime@0
如题vs下引用librtmp的时候报错:rtmp.obj : error LNK2001: 无法解析的外部符号 __imp__timeGetTime@0 在link 里加入 winmm.lib 就可以 ...
随机推荐
- 关于微信小程序并发数不能超过五个的问题
wx.request 的最大请求数为5个,超过的部分就请求不到了 昨天遇到个问题,首页的请求数一共有9个,但是在有appid开发时竟然一直都没出错,直到我切到没appid的版本的时候才发现了这个问题. ...
- Static 静态内部类
Java中的类可以是static吗?答案是可以.在java中我们可以有静态实例变量.静态方法.静态块.类也可以是静态的. java允许我们在一个类里面定义静态类.比如内部类(nested class) ...
- Python 使用cx_freeze 生成exe文件【转】
Python 使用cx_freeze 生成exe文件 在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller.py2exe恐怕是三 ...
- config .net webapi to return json.
1.add content negotiator using System; using System.Collections.Generic; using System.Linq; using Sy ...
- 【Visual Studio】无法打开包括文件:“SDKDDKVer.h”
解决办法是在头文件的搜索目录中添加$(WindowsSDK_IncludePath);,同时在库文件的搜索目录中添加$(WindowsSDK_LibraryPath_x86);
- C结构体struct用法小结
结构体和int,float等类型一样是一种常用的类型,它是由各种基本数据类型构成,通常包含有struct关键字,结构体名,结构体成员,结构体变量. 一.结构体定义 通常有3种定义方式,以例子方式表示: ...
- hdu 3879 hdu 3917 构造最大权闭合图 俩经典题
hdu3879 base station : 各一个无向图,点的权是负的,边的权是正的.自己建一个子图,使得获利最大. 一看,就感觉按最大密度子图的构想:选了边那么连接的俩端点必需选,于是就以边做点 ...
- STM32命名
STM32产品命名 示例: STM32 F 100 C 6 T 6 B XXX 1 2 3 4 5 6 7 8 9 从上面的料号可以看出以下信息: ST品牌ARM Cortex-Mx系列内核32位超值 ...
- #译# Core Data概述 (转)
昨晚熬夜看发布会(本以为屌丝终于能买得起苹果了,谁知道...),因为看不了视频直播,所以就正好有空就把www.objc.io最新的一篇文章翻译了一下,同时感谢CocoaChina翻译组提供校对,以下为 ...
- Path特效之PathMeasure打造万能路径动效
前面两篇文章主要讲解了 Path 的概念和基本使用,今天我们一起利用 Path 做个比较实用的小例子: 上一篇我们使用 Path 绘制了一个小桃心,我们这一篇继续围绕着这个小桃心进行展开: ----- ...