• 8812阅读
  • 4回复

【提问】正确的程序,出现奇怪的链接错误[已解决] [复制链接]

上一主题 下一主题
离线北方狼
 
只看楼主 倒序阅读 楼主  发表于: 2005-12-07
大家好!

我在qt for vs2003上编译一个完好的程序
程序见 http://doc.trolltech.com/4.0/tutorial-t8.html

能通过编译,却出现许多链接错误,无从下手,望高人指点:


正在链接...
cannonfield.obj : error LNK2019: 无法解析的外部符号 "protected: void __thiscall CannonField::angleChanged(int)" (?angleChanged@CannonField@@IAEXH@Z) ,该符号在函数 "public: void __thiscall CannonField::setAngle(int)" (?setAngle@CannonField@@QAEXH@Z) 中被引用
cannonfield.obj : error LNK2001: 无法解析的外部符号 "public: virtual int __thiscall CannonField::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@CannonField@@UAEHW4Call@QMetaObject@@HPAPAX@Z)
cannonfield.obj : error LNK2001: 无法解析的外部符号 "public: virtual void * __thiscall CannonField::qt_metacast(char const *)" (?qt_metacast@CannonField@@UAEPAXPBD@Z)
cannonfield.obj : error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall CannonField::metaObject(void)const " (?metaObject@CannonField@@UBEPBUQMetaObject@@XZ)
ldcrange.obj : error LNK2001: 无法解析的外部符号 "public: virtual int __thiscall LCDRange::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@LCDRange@@UAEHW4Call@QMetaObject@@HPAPAX@Z)
ldcrange.obj : error LNK2001: 无法解析的外部符号 "public: virtual void * __thiscall LCDRange::qt_metacast(char const *)" (?qt_metacast@LCDRange@@UAEPAXPBD@Z)
ldcrange.obj : error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall LCDRange::metaObject(void)const " (?metaObject@LCDRange@@UBEPBUQMetaObject@@XZ)
E:\项目\cannonbattle\Debug\cannonbattle.exe : fatal error LNK1120: 7 个无法解析的外部命令

生成日志保存在“file://e:\项目\cannonbattle\Debug\BuildLog.htm”中
cannonbattle - 8 错误,0 警告
[ 此贴被北方狼在2005-12-11 12:51重新编辑 ]
离线myer

只看该作者 1楼 发表于: 2005-12-08
由提示信息可以看到cannonfield.obj没有相关的moc信息而头文件定义了Q_OBJECT宏
将cannonfield.h文件moc编译一下。
http://user.qzone.qq.com/56430808
离线北方狼
只看该作者 2楼 发表于: 2005-12-08
the problem has been resolved and thanks very much
离线XChinux

只看该作者 3楼 发表于: 2005-12-08
如何解决的?
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线北方狼
只看该作者 4楼 发表于: 2005-12-11
下面是引用myer于2005-12-08 14:54发表的:
由提示信息可以看到cannonfield.obj没有相关的moc信息而头文件定义了Q_OBJECT宏
将cannonfield.h文件moc编译一下。
快速回复
限100 字节
 
上一个 下一个