
Moritz Beber
Hello everyone,
Hello, guys I had to step away from support for a bit, but now I am planning to reply to all the posts.
after prying for any hints in the documentation
Should probably start here: http://www.boost.org/doc/libs/1_37_0/libs/test/doc/html/utf/user-guide/usage...
and reading frustrating mails in the archives for a while now, I get the feeling that this is a very confusing topic.
I don't think so. There was some confusion about dynamic library variant, but the static library was there from the beginning and never really changed much.
My aim is to use a static library of boost.test because I need to compile it a lot and the waiting time when using the header is just frustrating.
Reasonable.
So I added to the "Jamfile.v2" in "libs/test/build" under "requirements" the following line: <define>BOOST_TEST_ALTERNATIVE_INIT_API=1
Why? Didn't it work for you out of the box?
Then I used boost.build and apart from a few warnings like: ./boost/test/detail/config.hpp:85:1: warning: "BOOST_TEST_ALTERNATIVE_INIT_API" redefined
This is a bit fishy. This place is only related to the dynamic library variant. Though maybe Boost.Build builds both with single command and it's fine in that case.
Then I tried the following code, which I mostly copied from the documentation, except for adding two macros:
#define BOOST_TEST_NO_LIB #define BOOST_TEST_ALTERNATIVE_INIT_API #define BOOST_TEST_MODULE example #include
BOOST_AUTO_TEST_SUITE( test_suite1 )
BOOST_AUTO_TEST_CASE( test_case1 ) { BOOST_WARN( sizeof(int) < 4 ); }
...
When I try to compile, however, I get the following error:
/home/engineer/libs/boost/lib/libboost_unit_test_framework-gcc43-mt-1_37.a(unit_test_main.o):
In function `main': unit_test_main.cpp:(.text+0x2229): undefined reference to `init_unit_test()' collect2: ld returned 1 exit status
Works fine for me. I just tried and reproduce your exercise. Maybe clean build would help? Also try to see on results from preprocessor: check if init_unit_test is there. Genandiy