News:

The new Release 25.03 is out! You can download binaries for Windows and many major Linux distros here .

Main Menu

Boost::test won't link

Started by smallB, October 19, 2011, 10:31:35 AM

Previous topic - Next topic

smallB

Hi, I've just tried to use boost library for testing but during linking process I'm getting following error:
undefined reference to `boost::test_tools::tt_detail::check_impl(boost::test_tools::predicate_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned int, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned int, ...)'|
What am I doing wrong?

oBFusCATed

You're not linking to some of the boost libs. Check the docs, to see which one:)
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

smallB

Which docs boost or gcc? And where to start? In fairness I don't think that without help I'm able to do that.

oBFusCATed

Boost docs, of course.
There you'll find what libs you need to link for particular boost library.
The you can look at the GCC docs for the exact options you need to pass or check the C::B docs/wiki.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

smallB

Ok, thanks, I'll try to do it tomorrow and see what I can do with this.

smallB

Ok I did it.
For others, in order to configure boost for gcc:
1. Download boost
2. install it according to instructions from boost site
3. In code::blocks in Settings/global variables add path to your boost library for base and lib fields (this should be located in stage/lib folder)
4. In code::blocks in Project/Build options..., linker settings tab, link libraries - add here those libraries
5. In code::blocks in Project/Build options...Search directories tab in compiler subtab add $(#boost) and in linker subtab add $(#boost.lib).
Done. Uphhh... Spent few days on this but it was worth it. Now I can use this great IDE with gcc compiler which at the moment of this writing is miles ahead of MS. I am not being stopped in my personal development by MS - C++11 here I come!

oBFusCATed

Quote from: smallB on October 21, 2011, 10:23:14 AM
5. In code::blocks in Project/Build options...Search directories tab in compiler subtab add $(#boost) and in linker subtab add $(#boost.lib).
I think it should be $(#boost.include) to be fully correct
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

smallB

Hi, I've put just $(#boost) and it seems to work