ошибка связывания cppunit в netbeans

Я пытаюсь запустить некоторые тесты с тестами cppUnit на NETBEANS на Mac — Lion OS10x, но я получаю эту ошибку после попытки скомпилировать ее:

/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) 

Может ли кто-нибудь сказать мне, как решить эту ошибку, пожалуйста?


person jis    schedule 07.08.2012    source источник


Ответы (1)


Эта ошибка компоновщика говорит, что нет функции main(). Вам нужно создать отдельный исполняемый файл, содержащий функцию main() для вызова модульных тестов.

CppUnit — это фреймворк, но он не включает исполняемый файл, который запускает тесты, вы должны предоставить его самостоятельно. Вот очень простой пример: https://stackoverflow.com/a/9302288/99027

person John Deters    schedule 09.08.2012