|
Boost Users : |
Subject: Re: [Boost-users] libboost_date_time: undefined reference to __sync_fetch_and_add_4
From: Carsten Raas (carsten.raas_at_[hidden])
Date: 2009-04-03 19:55:22
Hi Vladimir!
Vladimir Prus wrote:
> Carsten Raas wrote:
>>
>> I built a (complete) Boost 1.38 library with the Intel compilers
>> 10.1.021, 11.0.073, and 11.0.081 for an EM64T (x86_64) Linux
>> architecture. But I end up with the same problem for all builds: the
>> shared version of libboost_date_time cannot be linked to this simple
>> demo program:
> ...
>> I have been googling around for a while, but all I found was related to
>> GCC sync primitives (e.g. sync_lock_test_and_set, sync_fetch_and_add)
>> and different architectures (armel, sparc, etc.). I also tried the
>> workaround with
>> #define BOOST_SP_USE_PTHREADS
>> in boost/config/user.hpp, without success.
>
> Did you rebuild date_time itself with this change?
Yes, I did.
I followed the hint of Peter Dimov in
http://lists.boost.org/Archives/boost/2008/04/135521.php
This was a different context, I just wanted to have this checked.
> Is the file actually included anywhere?
Not directly, but config.hpp includes user.hpp. And compiler_config.hpp
(of date_time) includes config.hpp. So I just was not sure whether this
#define would influence boost_date_time at all or not.
> Does adding such define near the point where BOOST_SP_USE_PTHREADS
> is tested helps?
Well, it is not used directly. But I found things like BOOST_HAS_THREADS
and I don't know where they come from. So I used user.hpp to define
BOOST_SP_USE_PTHREADS.
I could not find a better header file to define it.
detail/sp_counted_base.hpp refers to BOOST_SP_USE_PTHREADS, but it
includes config.hpp which includes user.hpp.
Best regards,
-Carsten
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net