2012-05-04 45 views
0

我有單元測試項目中使用的CppUnit,我用QTtestrunner顯示這裏的結果是代碼問題與QTtestrunner在CppUnit的

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

+0

您可以添加您的命令行參數,用於鏈接? – moggi

+0

對於編譯我用的bjam這裏是我的代碼'使用圖書館= <庫路徑> UT_Cpp_Test /主/庫/ <庫文件> UT_Cpp_Test /主/庫/ libcppunit.a;'這是對靜態庫。 'EXE UT_Cpp_Test _ $(GL_OS_TAG) :\t [水珠的src/* CPP] :$(使用情況的要求) \t $(使用庫) \t <庫路徑> UT_Cpp_Test /庫 <發現-shared-庫> cppunit'和這個執行。 – Oumaya

+0

事實上,我發現我沒有編譯qttesrunnerlib,因此我試圖在安裝qt後編譯它,我需​​要鏈接創建的lib,謝謝任何方式 – Oumaya

回答

4

Qt版本的區別是問題所在。你可以下載這個patch 它轉換爲Qt3,然後你可以使用「qt3to4」將它轉換爲Qt4。

還需要添加QT3支持到Pro文件,當您使用qttestrunner.a庫。

QT += qt3support