链接错误编译qt项目在visual 2010

link error compiling qt project on visual 2010

本文关键字:visual 2010 项目 qt 错误 编译 链接      更新时间:2023-10-16

我尝试用visual 2010编译一个qt项目,但当我重建我的解决方案时,我有一些链接错误:

error LNK2001: unresolved external symbol "public: virtual int __thiscall BNetwork::qt_metacall(enum QMetaObject::Call,int,void * *)" on bnetwork.obj
error LNK2001: unresolved external symbol "public: virtual int __thiscall Contact::qt_metacall(enum QMetaObject::Call,int,void * *)" on contact.obj
error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall BNetwork::metaObject(void)const " on bnetwork.obj  
error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall Contact::metaObject(void)const " on contact.obj
error LNK2001: unresolved external symbol "public: virtual void * __thiscall BNetwork::qt_metacast(char const *)" on bnetwork.obj
error LNK2001: unresolved external symbol "public: virtual void * __thiscall Contact::qt_metacast(char const *)" on contact.obj

在"谷歌搜索"之后,我找不到解决这个问题的方法我把我所有的Qt库放在c:/Qt/4.7.4/lib/上,但我总是有这些错误…

我确信Qt是构建和安装在视觉上,因为当我编译以下代码(这是一个例子,而不是我的项目)它工作得很好:

#include <QtGui/qapplication.h>
#include <QtGui/qpushButton.h>
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QPushButton bouton("Bonjour les Zéros !");
    bouton.show();
    QObject::connect(&bouton, SIGNAL(clicked()), &app, SLOT(quit()));
    return app.exec();
}

我没有这些错误,所以我认为这是特定于我的项目,但我找不到解决方案

有人能帮我吗?

问题解决了!i do moc -I"%QTDIR%include"-I"%QTDIR%includeQtCore" -I"%QTDIR%includeQtGui" -omoc_contact.cpp contact.h和bnetwork.h相同。之后,我添加了新的。cpp文件在我的项目,它的工作!感谢@Yumino:)