Solaris/GCC 3.4.x/4.0.x issue: _GLIBCXX_HAVE_ASINL & others.
Karel Gardas
kgardas@objectsecurity.com
Wed Dec 14 17:30:00 GMT 2005
Hello,
I'm trying to solve small MICO build issue on Solaris/GCC platform. The
issue is simple: since GCC 3.4.0 we start to fail compiling code which
uses asinl and other functions. The actual issue is that configure
(generated by autoconf2.13) detects asinl (and others) function as
available, while in fact it is not available on the system (headers/libs),
but it is available only in GCC's libstdc++ (as a symbol not as a function
defined in header file). So this misdetection of asinl and others then
cause MICO build to fail since asinl and others are not defined in header
files.
I've studied this issue on linux and solaris with GCC 3.4.x and 4.0.1 and
found that interestingly _GLIBCXX_HAVE_ASINL is defined when libstdc++ do
not provide asinl symbol (function) and it is not defined when it provides
it. I have two questions with regarding to this:
1) is this issue GCC's bug to publicly expose
asinl/ldexpl/frexpl/fmodl/ceill/floorl/fabsl symbols in its libstdc++?
2) is it reliable to use _GLIBCXX_HAVE_ASINL to detect if asinl is just
exposed by libstdc++ and not supported by the target OS?
Thanks,
Karel
--
Karel Gardas kgardas@objectsecurity.com
ObjectSecurity Ltd. http://www.objectsecurity.com
More information about the Gcc
mailing list