2013-08-26 100 views
0

我剛剛使用brew在我的MAC上安裝了CppUTest,如指導所示。 當我嘗試構建示例cpp時失敗。CppUTest示例不起作用

TEST_GROUP(FirstTestGroup) 
{ 
}; 

TEST(FirstTestGroup, FirstTest) 
{ 
    FAIL("Fail me!"); 
} 

我想這是因爲定義這些宏的頭文件沒有包括在內。所以我添加如下:

#include "CppUTest/TestHarness.h" 
#include "CppUTest/TestOutput.h" 
TEST_GROUP(FirstTestGroup) 
{ 
}; 

TEST(FirstTestGroup, FirstTest) 
{ 
    FAIL("Fail me!"); 
} 

現在我得到一堆的錯誤。

Undefined symbols for architecture x86_64: "UtestShell::assertTrue(bool, char const*, char const*, char const*, int)", referenced from: vtable for TEST_FirstTestGroup_FirstTest_TestShellin ccNDwnbv.o 

回答

0

您正在收到的錯誤是一個鏈接器錯誤,它表明您沒有鏈接CppUTest庫。很難真正地說出錯,因爲你的問題缺少Makefiles。你能解釋一下你編譯過的例子嗎?

+0

你好,Bas。我寫一個簡單的生成文件是這樣的: CC = GCC CXX =克++ CPPUTEST_HOME = /根的/ usr/cpputest-3.4 FLAGS = -c CPPFLAGS + = -I $(CPPUTEST_HOME)/包括 LD_LIBRARIES = -L $(CPPUTEST_HOME)/ lib目錄-lCppUTest -lCppUTestExt TARGET = TryTest 物體= TryTest.o SOURCES = TryTest.cpp $(TARGET):$(對象) 然後用做建目標。 –

+0

嘗試使用LDFLAGS而不是LD_LIBRARIES,並且還需要向其添加-lstdC++。 –