Boost logo

Boost-Build :

From: Joaquín Mª López Muñoz (joaquin_at_[hidden])
Date: 2005-08-31 01:46:05


John Maddock ha escrito:

>
> With Boost-1.33.0 and the latest cygwin (gcc-4.4.4) then if I build
> the
> config_info test case (under libs/config/test) then I see the
> BOOST_HAS_THREADS *is* getting defined.
>
> It would only be explicitly undef'ed if gcc and/or libstdc++3 had been
> built
> single-threaded, in which case there is no way to build thread safe
> programs, you need to look into boost/config/compiler/gcc.hpp and
> boost/config/stdlib/libstdcpp3.hpp to see why it's getting undef'ed in
> your
> case, but before you do that, do a:

OK, I've traced the issue back to the internal GCC macro

_GLIBCPP_HAVE_GTHR_DEFAULT

not being defined in a GCC config header named bits/c++config.h.
I've manually defined that (instructions on the header seem to indicate
I'm
allowed to do it) and now BOOST_HAS_THREADS is defined, but
the problem shows the other way around: I cannot set it off
with

bjam "-sTOOLS=GCC" "-sBUILD=<threading>single" test_basic

Shouldn't BOOST_HAS_THREADS be undef'd in this latter case?

>
>
> g++ -v
>
> and make sure it says:
>
> Thread model: posix

Confirmed.

Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo

 --Boundary_(ID_5uCsuNQ9T7azTqIAxiFIlg) Content-type: text/html; charset=us-ascii
Content-transfer-encoding: 7BIT

<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
&nbsp;
<p>John Maddock ha escrito:
<blockquote TYPE=CITE>&nbsp;
<br><tt>With Boost-1.33.0 and the latest cygwin (gcc-4.4.4) then if I build
the</tt>
<br><tt>config_info test case (under libs/config/test) then I see the</tt>
<br><tt>BOOST_HAS_THREADS *is* getting defined.</tt>
<p><tt>It would only be explicitly undef'ed if gcc and/or libstdc++3 had
been built</tt>
<br><tt>single-threaded, in which case there is no way to build thread
safe</tt>
<br><tt>programs, you need to look into boost/config/compiler/gcc.hpp and</tt>
<br><tt>boost/config/stdlib/libstdcpp3.hpp to see why it's getting undef'ed
in your</tt>
<br><tt>case, but before you do that, do a:</tt></blockquote>

<p><br>OK, I've traced the issue back to&nbsp; the internal GCC macro
<p>_GLIBCPP_HAVE_GTHR_DEFAULT
<p>not being defined in a GCC config header named bits/c++config.h.
<br>I've manually defined that (instructions on the header seem to indicate
I'm
<br>allowed to do it) and now BOOST_HAS_THREADS is defined, but
<br>the problem shows the other way around: I cannot set it off
<br>with
<p>bjam "-sTOOLS=GCC" "-sBUILD=&lt;threading>single" test_basic
<p>Shouldn't BOOST_HAS_THREADS be undef'd in this latter case?
<br>&nbsp;
<blockquote TYPE=CITE>&nbsp;
<p><tt>g++ -v</tt>
<p><tt>and make sure it says:</tt>
<p><tt>Thread model: posix</tt></blockquote>

<p><br>Confirmed.
<p>Joaqu&iacute;n M L&oacute;pez Mu&ntilde;oz
<br>Telef&oacute;nica, Investigaci&oacute;n y Desarrollo
<br>&nbsp;</html>
 --Boundary_(ID_5uCsuNQ9T7azTqIAxiFIlg)--


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk