
Emil,
On Mon, Sep 22, 2008 at 3:40 AM, Tobias Oberstein <tobias.oberstein@gmx.de> wrote:
I fixed the problem by patching
boost/exception/enable_current_exception.hpp
=> inlined the templated function make_clone manually into the single call location, which is in class clone_impl.
I'll attach the patch, don't know if it makes it through the list.
I would like to investigate if this is compiler-related problem. Looking at the compilers we test Boost on, I don't see GCC 3.4.4, though we do test with 3.4.2, 3.4.3 and 3.4.6.
Also, if it isn't too much trouble, could you checkout the latest Trunk from http://svn.boost.org/svn/boost/trunk/ and try your test with it? This code has been heavily refactored after 1.36 was released and trying Trunk will tell us if the problem survived the refactoring.
I rebuild all Boost libs from trunk. (Side-Q: why does bjam --show-libraries list function_types as a library to be built, when the built does nothing?) Indeed, the "exception related" problem is gone. I still need the 3 patches attached for a full build. First patch is for Boost.Math ... there is no log1pl on this target. The other 2 are for Boost.Filesystem .. again multiple definitions while linking. gcc.link.dll /tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/libboost_filesystem-gcc34-mt-1_37.so.1.37.0 /tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/portability.o:(.bss._ZZNK5boost6system14error_category7messageEiE1s[*boost::system::error_category::message(int) const::s]+0x0): multiple definition of `boost::system::error_category::message(int) const::s' /tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/operations.o:(.bss._ZZNK5boost6system14error_category7messageEiE1s[boost::system::error_category::message(int) const::s]+0x0): first defined here collect2: ld returned 1 exit status "g++" -o "/tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/libboost_filesystem-gcc34-mt-1_37.so.1.37.0" -Wl,-h -Wl,libboost_filesystem-gcc34-mt-1_37.so.1.37.0 -shared -Wl,--start-group "/tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/operations.o" "/tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/path.o" "/tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/portability.o" "/tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/utf8_codecvt_facet.o" "/tmp/boost_trunk/boost/bin.v2/libs/system/build/gcc-3.4.4/release/threading-multi/libboost_system-gcc34-mt-1_37.so.1.37.0" -Wl,-Bstatic -Wl,-Bdynamic -lrt -Wl,--end-group -Wl,--strip-all -pthread ...failed gcc.link.dll /tmp/boost_trunk/boost/bin.v2/libs/filesystem/build/gcc-3.4.4/release/threading-multi/libboost_filesystem-gcc34-mt-1_37.so.1.37.0... ...failed updating 1 target...