0

私はlibcppunitに基づくプロジェクトで作業していますが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オブジェクトに関連する同様のメッセージがたくさんあります。
助けがあれ
ば、よろしくお願いします。

4

1 に答える 1

1

qtを使用している場合、undefined reference to ...通常は、クラスを継承していて、その仮想関数を実装していないことを意味します。継承しているQtクラスのドキュメントを確認し、その関数のどれが仮想であるかを調べて、クラスに実装します。

于 2012-05-15T15:30:14.283 に答える