
I'm trying to build Boost.Signals on a Debian-based (Nokia Maemo OS2008 Diablo) system which is using GCC 3.4.4 toolchain (CodeSourcery ARM 2005q3-2). Problem is when linking, I get duplicate symbol boost::exception_detail::make_clone<boost::exception_detail::error_info_injector<boost::bad_weak_ptr>
(boost::exception_detail::error_info_injector<boost::bad_weak_ptr>
in trackable.o named_slot_map.o Details see below. Any hints? Thanks alot, tgo [sbox-DIABLO_ARMEL: ~/build/boost_1_36_0] > bjam --toolset=gcc --build-dir=/home/oberstet/tmp/boost --with-signals warning: Graph library does not contain optional GraphML reader. note: to enable GraphML support, set EXPAT_INCLUDE and EXPAT_LIBPATH to the note: directories containing the Expat headers and libraries, respectively. warning: skipping optional Message Passing Interface (MPI) library. note: to enable MPI support, add "using mpi ;" to user-config.jam. note: to suppress this message, pass "--without-mpi" to bjam. note: otherwise, you can safely ignore this message. Building Boost.Regex with the optional Unicode/ICU support disabled. Please refer to the Boost.Regex documentation for more information (don't panic: this is a strictly optional feature). ...patience... ...found 576 targets... ...updating 1 target... gcc.link.dll /home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/libboost_signals-gcc34-mt-1_36.so.1.36.0 /home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/named_slot_map.o:(.bss._ZZN5boost16exception_detail10make_cloneINS0_19error_info_injectorINS_12bad_weak_ptrEEEEEPNS0_10clone_baseERKT_E9bad_alloc[*boost::exception_detail::clone_base* boost::exception_detail::make_clone<boost::exception_detail::error_info_injector<boost::bad_weak_ptr>
(boost::exception_detail::error_info_injector<boost::bad_weak_ptr> const&)::bad_alloc]+0x0): multiple definition of `boost::exception_detail::clone_base* boost::exception_detail::make_clone<boost::exception_detail::error_info_injector<boost::bad_weak_ptr> (boost::exception_detail::error_info_injector<boost::bad_weak_ptr> const&)::bad_alloc' /home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/trackable.o:(.bss._ZZN5boost16exception_detail10make_cloneINS0_19error_info_injectorINS_12bad_weak_ptrEEEEEPNS0_10clone_baseERKT_E9bad_alloc[boost::exception_detail::clone_base* boost::exception_detail::make_clone<boost::exception_detail::error_info_injector<boost::bad_weak_ptr> (boost::exception_detail::error_info_injector<boost::bad_weak_ptr> const&)::bad_alloc]+0x0): first defined here
collect2: ld returned 1 exit status
"g++" -o "/home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/libboost_signals-gcc34-mt-1_36.so.1.36.0" -Wl,-h -Wl,libboost_signals-gcc34-mt-1_36.so.1.36.0 -shared -Wl,--start-group "/home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/trackable.o" "/home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/connection.o" "/home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/named_slot_map.o" "/home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/signal_base.o" "/home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/slot.o" -Wl,-Bstatic -Wl,-Bdynamic -lrt -Wl,--end-group -Wl,--strip-all -pthread ...failed gcc.link.dll /home/oberstet/tmp/boost/boost/bin.v2/libs/signals/build/gcc-3.4.4/release/threading-multi/libboost_signals-gcc34-mt-1_36.so.1.36.0... ...failed updating 1 target... [sbox-DIABLO_ARMEL: ~/build/boost_1_36_0] > g++ --version sbox-arm-linux-g++ (GCC) 3.4.4 (release) (CodeSourcery ARM 2005q3-2) Copyright (C) 2004 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [sbox-DIABLO_ARMEL: ~/build/boost_1_36_0] >