Hi Robert,
Your problem does seem familiar. I ran across an issue like that with the Solaris compiler
which seems to be kind of like the MS compiler in the respect that even when you use a C++
include file like <cmath>, which instead of to 'inserting' functions into the std namespace,
simply inserts them into the global namespace, and then "doesn't know" about the same functions
when std:: is prepended to their call.... The following fixed my issue:
Change src/xalanc/PlatformSupport/DoubleSupport.hpp as follows:
- add an #if defined(SOLARIS) / #include <math.h> / #endif section
- in the isNAN(double) function put an #if defined(SOLARIS) / return isnan(theNumber) != 0;
/ #else / and #endif around the return std::isnan(theNumber) != 0; line
To change it for GNU g++ you'd need to replace the two occurrences of SOLARIS in the above
with __GCC__ if memory serves. When you do that, is your compilation issue gone?
Sincerely,
Martin
From: Robert Hillier [mailto:robert.hillier@oracle.com]
Sent: Tuesday, November 27, 2012 6:13 PM
To: c-users@xalan.apache.org
Subject: Building xalan-c 1.11 with Solaris 10 and gcc 3.2.3
Hello,
I'm having some problems building the latest xalan-c on a Solaris 10 platform.
I configure with the following options:
./runConfigure -p solaris -c gcc -x g++ -P /my/dest
When I try and build, I get the following error when compiling DOMStringHelper.cpp:
In file included from
<myPath>/xalan-c-1.11/c/src/xalanc/PlatformSupport/DOMStringHelper.cpp:50:
<myPath>/xalan-c-1.11/c/src/xalanc/PlatformSupport/DoubleSupport.hpp:
In
static member function `static bool
xalanc_1_11::DoubleSupport::isNaN(double)':
<myPath>/xalan-c-1.11/c/src/xalanc/PlatformSupport/DoubleSupport.hpp:86:
`
isnan' undeclared in namespace `std'
gmake[2]: *** [../../obj/DOMStringHelper.o] Error 1
Has anyone come across this before?
Thanks,
Rob
________________________________
The information contained in this communication is intended solely for the use of the individual
or entity to whom it is addressed and others authorized to receive it. It may contain confidential
or legally privileged information. If you are not the intended recipient you are hereby notified
that any disclosure, copying, distribution or taking any action in reliance on the contents
of this information is strictly prohibited and may be unlawful. If you have received this
communication in error, please notify us immediately by forwarding this email to MailAdmin@usoft.com
and then delete it from your system.
USoft is neither liable for the proper and complete transmission of the information contained
in this communication nor for any delay in its receipt.
|