Problem with gcc4.7 and call_once
Jeremy Huddleston Sequoia
jeremyhu at macports.org
Thu Aug 8 13:53:57 PDT 2013
On Aug 8, 2013, at 12:58, David Barto <DBarto at visionpro.com> wrote:
> It appears that the following is missing from the configuration for libstdc++.
>
> --enable-libstdcxx-threads
> Enable C++11 threads support. If not explicitly specified, the configure process enables it if possible. It defaults to 'off' on Solaris 9, where it would break symbol versioning. This option can change the library ABI.
>
> Yes, it changes the ABI, however for std::call_once to work, I think it is required. I don't think that the configuration process is setting it by default.
What makes you say that? It looks like it is to me:
if test x$enable_libstdcxx_threads = xauto ||
test x$enable_libstdcxx_threads = xyes; then
...
], [case $target_os in
# gthreads support breaks symbol versioning on Solaris 9 (PR
# libstdc++/52189).
solaris2.9*)
if test x$enable_symvers = xno; then
ac_has_gthreads=yes
elif test x$enable_libstdcxx_threads = xyes; then
AC_MSG_WARN([You have requested C++11 threads support, but])
AC_MSG_WARN([this breaks symbol versioning.])
ac_has_gthreads=yes
else
ac_has_gthreads=no
fi
;;
*)
ac_has_gthreads=yes
;;
esac],
[ac_has_gthreads=no])
else
ac_has_gthreads=no
fi
...
if test x"$ac_has_gthreads" = x"yes"; then
AC_DEFINE(_GLIBCXX_HAS_GTHREADS, 1,
[Define if gthreads library is available.])
fi
Is your _GLIBCXX_HAS_GTHREADS undefined for some reason? That doesn't make sense...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4145 bytes
Desc: not available
URL: <http://lists.macosforge.org/pipermail/macports-users/attachments/20130808/4f3bae49/attachment.p7s>
More information about the macports-users
mailing list