Visual C++ 应用程序中的 Qt 库错误

Posted

技术标签:

【中文标题】Visual C++ 应用程序中的 Qt 库错误【英文标题】:error with Qt libraries in visual c++ application 【发布时间】:2011-09-23 12:48:32 【问题描述】:

我正在使用 Visual c++ 处理基于 Qt 的项目。最初我安装了 Qt 4.7.3 并在 Visual c++ 中导入了它的库。一切正常。昨天,我在命令提示符下运行了“配置”命令。之后,我在编译程序时收到错误消息。

所以我卸载了 Qt 4.7.3 并安装了 4.7.4 并再次配置了库。但我仍然收到相同的错误消息。

Qwt.lib(moc_qwt_scale_widget.obj) : error LNK2001: unresolved external symbol "public: static struct QMetaObject const QWidget::staticMetaObject" (?staticMetaObject@QWidget@@2UQMetaObject@@B) 1>Qwt.lib(moc_qwt_dyngrid_layout.obj) : 错误 LNK2001: 无法解析的外部符号 "public: static struct QMetaObject const QLayout::staticMetaObject" (?staticMetaObject@QLayout@@2UQMetaObject@@B) 1>..\Debug\project.exe : 致命错误 LNK1120: 9 unresolved externals 1>

谁能帮我解决这个问题。

【问题讨论】:

【参考方案1】:

这是一个链接器错误。您需要使用 moc 编译器编译包含 Q_OBJECT 宏的头文件。看看这家伙的解决方案

Q_OBJECT Problem in Visual C++

【讨论】:

以上是关于Visual C++ 应用程序中的 Qt 库错误的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio 2013 控制台应用程序中的 Qt 和 opencv

如何使用 Visual C++ 2010 Express 从 32 位环境为 64 位 Windows 编译 Qt?

使用 Visual Studio 库中的“信号”

电脑问题 Microsoft visual c++ Runtime Library

C++ 项目依赖问题 Visual Studio 2005

Visual C++ 2017,外部“C”被忽略了吗?将 C++ 代码链接到 C 库时出现 LNK2019 错误