我正在基于lib cppunit的项目中工作,我需要使用qttestrunner
运行我的测试
我制作了libqttestrunnerd.a(qmake qttestrunnerlib.pro和make),显然存在链接问题,这里有一个输出样本:
/home/oumaya/docs/UT_Cpp_Test/main/cppDir/lib/lib/libqttestrunnerd.a(moc_testbrowserdlg.o):(.rodata._ZTV15TestBrowserBase[vtable for TestBrowserBase]+0x30): undefined reference to 'QWidget::setName(char const*)'
/home/oumaya/docs/UT_Cpp_Test/main/cppDir/lib/lib/libqttestrunnerd.a(moc_testbrowserdlg.o):(.rodata._ZTV15TestBrowserBase[vtable for TestBrowserBase]+0x34): undefined reference to 'QObject::insertChild(QObject*)'
有很多与QT对象有关的类似消息 任何帮助请 提前谢谢你。
答案 0 :(得分:1)
使用qt时,通常会得到undefined reference to ...
,这意味着您继承了一个类而没有实现其虚函数。检查您继承的Qt类的文档,找出它的哪些功能是虚拟的,并在您的类中实现它们。