0

我有一个项目使用 cppunit 进行单元测试,我使用 QTtestrunner 来显示结果这里是代码

CPPUNIT_NS::QtUi::TestRunner testrunner;  
testrunner.addTest (CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest());
testrunner.run (true);

但我在编译时收到了这条消息:

src/main.cpp:78: undefined reference to 'CppUnit::QtTestRunner::QtTestRunner()'
src/main.cpp:79: undefined reference to CppUnit::QtTestRunner::addTest(CppUnit::Test*)'                 
src/main.cpp:80: undefined reference to CppUnit::QtTestRunner::run(bool)'
src/main.cpp:91: undefined reference to 'CppUnit::QtTestRunner::~QtTestRunner()'

我知道存在链接问题,但我包含了所有我需要的 libcppunit.a 和 libcppunit.so

4

1 回答 1

4

Qt版本差异是问题所在。您可以下载此补丁 它转换为 Qt3,然后您可以使用“qt3to4”将其转换为 Qt4。

当您使用 qttestrunner.a 库时,您还需要将 qt3 支持添加到您的 pro 文件中。

QT += qt3support 
于 2015-02-10T16:02:56.657 回答