Boost logo

Boost :

From: Gennadiy Rozental (rogeeff_at_[hidden])
Date: 2002-07-24 04:05:52


Could somebody explain and propose the fix to the problem I expiriencing with *linking* of Boost.Function test with sunpro 6.1 compiler.

Here a fragment of bjam output:

...found 864 targets...
...updating 160 targets...
MkDir1 ../status/bin/function_test.test
MkDir1 ../status/bin/function_test.test/sunpro
MkDir1 ../status/bin/function_test.test/sunpro/debug
MkDir1 ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic
sunpro-C++-action ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
sunpro-Link-action ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test
Undefined first referenced
 symbol in file
boost::function0<double,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<boost::function<float,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable> >#Nvariant 1(const __type_4&) ..../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj_a/aQ_o_rezoOL2ONouM8QO.o
boost::function1<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function1<std::basic_string<char,std::char_traits<char>,std::allocator<char> >(*)(const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&)>#Nvariant 1(const __type_5&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function0<void,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<write_five_obj>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj_Y/Yona-H-_zXBi84kfMXv1.o
boost::function0<int,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<int(*)()>#Nvariant 1(const __type_4&) ..../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj_b/bpiIvu1Yk7wUjzc29bwp.o
boost::function0<void,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<write_three_obj>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj_a/aHaovNOJlYO9dplBG13L.o
boost::function0<int,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<generate_five_obj>#Nvariant 1(const __type_4&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function0<void,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<write_const_1_nonconst_2>#Nvariant 1(const __type_4&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function1<int,X*,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function1<int(X::*)()const>#Nvariant 1(const __type_5&) .../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj_3/36jPPxJpn3r1Fe-d56VD.o
boost::function1<int,int,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function1<add_to_obj>#Nvariant 1(const __type_5&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function2<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&,const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function2<std::basic_string<char,std::char_traits<char>,std::allocator<char> >(*)(const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&,const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&)>#Nvariant 1(const __type_6&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function0<int,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<generate_three_obj>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj__/_XD5eN2jp5zuU37EVd3y.o
boost::function1<int,int,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function1<std::negate<int> >#Nvariant 1(const __type_5&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function2<int,X&,int,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function2<int(X::*)(int)>#Nvariant 1(const __type_6&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function1<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,const char*,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function1<std::basic_string<char,std::char_traits<char>,std::allocator<char> >(*)(const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&)>#Nvariant 1(const __type_5&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function0<long,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<generate_five_obj>#Nvariant 1(const __type_4&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function2<int,short,short,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function2<int(*)(int,int)>#Nvariant 1(const __type_6&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
boost::function0<void,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<void(*)()>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj_I/IzivgYk4YpK6dQxMwlvZ.o
boost::function0<long,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<generate_three_obj>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj_U/UN7lmaT_oLq-8XfE-CxO.o
boost::function0<long,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function0<int(*)()>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/SunWS_cache/CC_obj_c/c7nv1d3N93kWxJd9z1lo.o
boost::function2<int,int,int,boost::empty_function_policy,boost::empty_function_mixin,std::allocator<boost::function_base> >::function2<boost::reference_wrapper<add_with_throw_on_copy> >#Nvariant 1(const __type_6&) ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o
ld: fatal: Symbol referencing errors. No output written to ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test

    CC -o "../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test" -xildoff -g "../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.o" "../libs/test/build/bin/libtest_exec_monitor.a/sunpro/debug/runtime-link-dynamic/libtest_exec_monitor.a"

...failed sunpro-Link-action ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test...
succeeded-test-file ../status/bin/function_test.test/sunpro/debug/runtime-link-dynamic/function_test.test
*
***************** failed above test: function_test ********************
*
MkDir1 ../status/bin/function_test.test/sunpro-stlport
MkDir1 ../status/bin/function_test.test/sunpro-stlport/debug
MkDir1 ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic
MkDir1 ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on
MkDir1 ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std
MkDir1 ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off
MkDir1 ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on
MkDir1 ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3
sunpro-C++-action ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
sunpro-Link-action ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test
Undefined first referenced
 symbol in file
boost::function0<int,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<generate_five_obj>#Nvariant 1(const __type_4&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function0<void,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<write_const_1_nonconst_2>#Nvariant 1(const __type_4&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function1<_STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >,_STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function1<_STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >(*)(const _STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >&)>#Nvariant 1(const __type_5&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function2<int,short,short,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function2<int(*)(int,int)>#Nvariant 1(const __type_6&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function0<long,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<generate_five_obj>#Nvariant 1(const __type_4&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function0<int,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<int(*)()>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj_b/bpiIvu1Yk7wUjzc29bwp.o
boost::function0<void,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<write_three_obj>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj_a/aHaovNOJlYO9dplBG13L.o
boost::function0<void,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<write_five_obj>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj_Y/Yona-H-_zXBi84kfMXv1.o
boost::function0<void,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<void(*)()>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj_I/IzivgYk4YpK6dQxMwlvZ.o
boost::function0<long,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<generate_three_obj>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj_U/UN7lmaT_oLq-8XfE-CxO.o
boost::function1<_STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >,const char*,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function1<_STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >(*)(const _STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >&)>#Nvariant 1(const __type_5&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function2<int,X&,int,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function2<int(X::*)(int)>#Nvariant 1(const __type_6&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function2<int,int,int,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function2<boost::reference_wrapper<add_with_throw_on_copy> >#Nvariant 1(const __type_6&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function0<int,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<generate_three_obj>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj__/_XD5eN2jp5zuU37EVd3y.o
boost::function1<int,int,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function1<add_to_obj>#Nvariant 1(const __type_5&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function0<long,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<int(*)()>#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj_c/c7nv1d3N93kWxJd9z1lo.o
boost::function2<_STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >,const _STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >&,const _STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >&,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function2<_STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >(*)(const _STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >&,const _STL::basic_string<char,_STL::char_traits<char>,_STL::allocator<char> >&)>#Nvariant 1(const __type_6&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function1<int,int,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function1<_STL::negate<int> >#Nvariant 1(const __type_5&) ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o
boost::function1<int,X*,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function1<int(X::*)()const>#Nvariant 1(const __type_5&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj_3/36jPPxJpn3r1Fe-d56VD.o
boost::function0<double,boost::empty_function_policy,boost::empty_function_mixin,_STL::allocator<boost::function_base> >::function0<boost::function<float,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable,boost::detail::function::unusable> >#Nvariant 1(const __type_4&) .../boost/status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/SunWS_cache/CC_obj_a/aQ_o_rezoOL2ONouM8QO.o
ld: fatal: Symbol referencing errors. No output written to ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test

    CC -o "../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test" -xildoff -L.../STLport-4.5.3/lib -g "../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.o" "../libs/test/build/bin/libtest_exec_monitor.a/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/libtest_exec_monitor.a" "-lstlport_sunpro"

...failed sunpro-Link-action ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test...
succeeded-test-file ../status/bin/function_test.test/sunpro-stlport/debug/runtime-link-dynamic/stlport-anachronisms-on/stlport-cstd-namespace-std/stlport-debug-alloc-off/stlport-iostream-on/stlport-version-4.5.3/function_test.test
*
***************** failed above test: function_test ********************

Thank you Gennadiy

_____________________________________________________________
A free email account your friends will never forget!
Get YOURNAME_at_[hidden] at http://www.emailaccount.com/

_____________________________________________________________
Promote your group and strengthen ties to your members with email_at_[hidden] by Everyone.net http://www.everyone.net/?btn=tag


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