|
Boost Users : |
Subject: [Boost-users] unit tests: auto tests, missing main, redef'ed init_unit_test_suite
From: Hicham Mouline (hicham_at_[hidden])
Date: 2009-06-04 09:02:48
g++3.4 - boost1.37
Hello,
I have n translation units .cpp and m auto test suites spread over the n
files.
For e.g.
file ni.cpp--------------------
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_SUITE(suite1)
BOOST_AUTO_TEST_CASE(case1)
BOOST_AUTO_TEST_SUITE_END()
file nj.cpp--------------------
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_SUITE(suite1)
BOOST_AUTO_TEST_CASE(case2)
BOOST_AUTO_TEST_CASE(case3)
BOOST_AUTO_TEST_SUITE_END()
file nk.cpp--------------------
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_SUITE(suite2)
BOOST_AUTO_TEST_CASE(case1)
BOOST_AUTO_TEST_CASE(case2)
BOOST_AUTO_TEST_SUITE_END()
The .cpp files are compiled with -DBOOST_TEST_MAIN=
AFAIU, I am then not required to provide the "init_unit_test" function nor
the "main" function.
I then try to link an executable:
g++ -m64 -Wall -Wextra -Wsign-compare -Werror -Wno-unused -std=c++98
-pedantic -Wno-long-long -pipe -g
-lboost_unit_test_framework-gcc34-mt-d-1_37 -o executable *.o
but i get this:
nk.o: In function `init_unit_test_suite(int, char**)':
...boost/test/unit_test_suite.hpp:188: multiple definition of
`init_unit_test_suite(int, char**)'
ni.o: ...boost/test/unit_test_suite.hpp:188: first defined here
for each object file
and
/usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/crt1.o(.text+0x21):
In function `_start':
: undefined reference to `main'
Regards,
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net