0

我正在 qtbase/example/widgets 下构建analogClock(类AnalogClock:公共QWidget)示例应用程序,但带有以下未定义符号:_ZTV11AnalogClock...

我 objdump -t analogClock.exe 试图找到引用这个符号的人,但没有找到......

MORE INFO:只要类继承自QWidget,并构造一个对象,那么就会有一个未定义的符号_ZTVXYYY,其中X是类名的长度,YYY是类名。

所以你能帮忙指出这个 _ZTVXYYY 符号是什么吗?以及如何避免这种情况?

4

2 回答 2

1

这是由于 Makefile 不是由正确的 qmake 工具生成的。

于 2012-07-30T08:28:39.927 回答
0

正如@thincal 所说,如果Qt 项目没有正确配置,qmake 会生成不正确的Makefile。

例如,如果我正在编写一个继承自 QWidget 的 PLUGIN,我必须:

  • Q_OBJECT在类定义的顶部添加宏;
  • 添加CONFIG += plugin项目配置文件(带.pro后缀)。
于 2019-03-29T10:30:25.480 回答