Boost logo

Boost :

Subject: [boost] [test] linking issues on trunk
From: Vicente J. Botet Escriba (vicente.botet_at_[hidden])
Date: 2012-11-01 14:03:03


Hi,

I have found some linking issues (see bellow) with Boost.Test ubuntu
gcc-4.4.6,gcc-4.6.1.0(c++0x),intel-12.1.3.0(c++0x).

I'm linking with boost_unit_test_framework. Should other libraries be added?

Best,
Vicente

P.S. This worked well before.

  time bjam --build-dir=/tmp/bin.v2
toolset=gcc-4.4.6,gcc-4.6.1.0x,intel-12.1.3.0x -q -d2

gcc.link
/tmp/bin.v2/boost/bin.v2/libs/thread/test/test_thread.test/gcc-4.4.6/debug/threading-multi/test_thread

     "g++-4.4" -Wl,-R
-Wl,"/tmp/bin.v2/boost/bin.v2/libs/chrono/build/gcc-4.4.6/debug/threading-multi"
-Wl,-R
-Wl,"/tmp/bin.v2/boost/bin.v2/libs/system/build/gcc-4.4.6/debug/threading-multi"
-Wl,-R
-Wl,"/tmp/bin.v2/boost/bin.v2/libs/thread/build/gcc-4.4.6/debug/threading-multi"
-Wl,-rpath-link
-Wl,"/tmp/bin.v2/boost/bin.v2/libs/chrono/build/gcc-4.4.6/debug/threading-multi"
-Wl,-rpath-link
-Wl,"/tmp/bin.v2/boost/bin.v2/libs/system/build/gcc-4.4.6/debug/threading-multi"
-Wl,-rpath-link
-Wl,"/tmp/bin.v2/boost/bin.v2/libs/thread/build/gcc-4.4.6/debug/threading-multi"
-o
"/tmp/bin.v2/boost/bin.v2/libs/thread/test/test_thread.test/gcc-4.4.6/debug/threading-multi/test_thread"
-Wl,--start-group
"/tmp/bin.v2/boost/bin.v2/libs/thread/test/test_thread.test/gcc-4.4.6/debug/threading-multi/test_thread.o"
"/tmp/bin.v2/boost/bin.v2/libs/chrono/build/gcc-4.4.6/debug/threading-multi/libboost_chrono.so.1.52.0"
"/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a"
"/tmp/bin.v2/boost/bin.v2/libs/thread/build/gcc-4.4.6/debug/threading-multi/libboost_thread.so.1.52.0"
"/tmp/bin.v2/boost/bin.v2/libs/system/build/gcc-4.4.6/debug/threading-multi/libboost_system.so.1.52.0"
-Wl,-Bstatic -Wl,-Bdynamic -lrt -Wl,--end-group -g -pthread

/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(unit_test_main.o):
In function
`boost::unit_test::unit_test_main(boost::unit_test::test_suite* (*)(int,
char**), int, char**)':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/unit_test_main.ipp:92:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(framework.o):
In function `boost::unit_test::framework::impl::apply_filters(unsigned
long)':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:506:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:533:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:537:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:548:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(framework.o):/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:603:
more undefined references to
`boost::unit_test::traverse_test_tree(unsigned long,
boost::unit_test::test_tree_visitor&, bool)' follow
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(framework.o):
In function `visit':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:686:
undefined reference to
`boost::unit_test::decorator::for_test_unit::apply(boost::unit_test::test_unit&)'
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(framework.o):
In function
`boost::unit_test::framework::init(boost::unit_test::test_suite*
(*)(int, char**), int, char**)':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:691:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:698:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(framework.o):
In function `boost::unit_test::framework::run(unsigned long, bool)':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:1008:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:1045:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(framework.o):
In function
`boost::unit_test::ut_detail::label_filter::visit(boost::unit_test::test_unit
const&)':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:217:
undefined reference to
`boost::unit_test::test_unit::has_label(boost::unit_test::basic_cstring<char
const>) const'
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(framework.o):
In function
`boost::unit_test::ut_detail::remove_disabled::visit(boost::unit_test::test_unit
const&)':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/framework.ipp:300:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(progress_monitor.o):
In function
`boost::unit_test::traverse_test_tree(boost::unit_test::test_unit
const&, boost::unit_test::test_tree_visitor&, bool)':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/tree/traverse.hpp:46:
undefined reference to
`boost::unit_test::traverse_test_tree(boost::unit_test::test_case
const&, boost::unit_test::test_tree_visitor&, bool)'
/mnt/boost/trunk/libs/thread/test/../../../boost/test/tree/traverse.hpp:48:
undefined reference to
`boost::unit_test::traverse_test_tree(boost::unit_test::test_suite
const&, boost::unit_test::test_tree_visitor&, bool)'
/tmp/bin.v2/boost/bin.v2/libs/test/build/gcc-4.4.6/debug/link-static/threading-multi/libboost_unit_test_framework.a(results_reporter.o):
In function
`boost::unit_test::results_reporter::make_report(boost::unit_test::report_level,
unsigned long)':
/mnt/boost/trunk/libs/thread/test/../../../boost/test/impl/results_reporter.ipp:181:
undefined reference to `boost::unit_test::traverse_test_tree(unsigned
long, boost::unit_test::test_tree_visitor&, bool)'
collect2: ld returned 1 exit status
...failed gcc.link
/tmp/bin.v2/boost/bin.v2/libs/thread/test/test_thread.test/gcc-4.4.6/debug/threading-multi/test_thread...
...failed updating 1 target...


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk