2012-08-07 6 views
1

내가 Mac에서 넷빈즈에 CppUnit을 테스트 몇 가지 테스트를 실행하려고 연결 CppUnit을 - 사자 OS10x을하지만 난 그것을 컴파일하려고 후이 오류를 얻을 :NetBeans는 오류

/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf 
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-MacOSX/xxx 
make[2]: `dist/Debug/GNU-MacOSX/xxx' is up to date. 
"/usr/bin/make" -f nbproject/Makefile-Debug.mk SUBPROJECTS= .build-tests-conf 
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-MacOSX/xxx 
make[2]: `dist/Debug/GNU-MacOSX/xxx' is up to date. 
mkdir -p build/Debug/GNU-MacOSX/tests/TestFiles 
g++  -o build/Debug/GNU-MacOSX/tests/TestFiles/f1 build/Debug/GNU-MacOSX/newmain_nomain.o 
-lcppunit -lcppunit -lcppunit 
Undefined symbols for architecture x86_64: 
    "_main", referenced from: 
    start in crt1.10.6.o 
ld: symbol(s) not found for architecture x86_64 
collect2: ld returned 1 exit status 
make[1]: *** [build/Debug/GNU-MacOSX/tests/TestFiles/f1] Error 1 
make: *** [.build-tests-impl] Error 2 

BUILD TESTS FAILED (exit value 2, total time: 11s) 

사람이 어떻게 해결하는 방법을 말해 줄래 이 오류는 제발?

답변

1

해당 링커 오류는 main() 함수가 없다고 말합니다. 단위 테스트를 호출하려면 main() 함수를 포함하는 별도의 실행 파일을 만들어야합니다.

CppUnit은 프레임 워크이지만 테스트를 실행하는 실제 실행 파일은 포함되어 있지 않으므로 직접 제공해야합니다. 다음은 매우 간단한 예입니다. https://stackoverflow.com/a/9302288/99027