Boost logo

Boost Users :

Subject: Re: [Boost-users] thread: linux fedora .so built file under c++98 does not provide start_thread() symbol
From: MM (finjulhich_at_[hidden])
Date: 2013-10-21 08:41:04


On 18 October 2013 20:57, Vicente J. Botet Escriba <vicente.botet_at_[hidden]
> wrote:

> Le 18/10/13 21:39, MM a écrit :
>
> On 18 October 2013 20:04, Vicente J. Botet Escriba <
> vicente.botet_at_[hidden]> wrote:
>
>> Le 18/10/13 20:50, MM a écrit :
>>
>> Are you sure your compiling with Boost 1.53?
>> start_thread is defined in boost/thread/detail/thread.h lines 178-184 as
>>
>> void start_thread()
>> {
>> if (!start_thread_noexcept())
>> {
>> boost::throw_exception(thread_resource_error());
>> }
>> }
>>
>> Indeed, this file (thread.hpp not .h) is there and has the same code at
> the same lines.
> However /usr/lib64/libboost_thread-mt.so.1.53.0 doesn't have
> start_thread() symbol at all.
> start_thread_noexcept() is there though.
>
> start_thread is defined inside a class and would expect it to be
> inlined. I don't understand why the symbols is unresolved. Please could you
> compile with -E and take a look at the preprocessed output?
>
> Fedora guys said they compile with g++4.8 but with c++98, not c++11
>
> Does it works if you compile with c++98?
>
I use some c++11 additions so I couldn't.

>
> Best,
> Vicente
>
> I have actually just switched from the linker (ld.bdf) to the 'new' gold
linker and it solved the problem,.
Perhaps listbboost had been built by fedora with gold, and my system was
using bdf instead,

MM



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