|
Boost : |
Subject: Re: [boost] [Signals] Build problem on Linux / ARM with GCC 3.4.4
From: Tobias Oberstein (tobias.oberstein_at_[hidden])
Date: 2008-09-22 18:57:49
Emil,
> On Mon, Sep 22, 2008 at 3:40 AM, Tobias Oberstein
> <tobias.oberstein_at_[hidden]> 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...
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk