|
From: | Christian Hitz |
Subject: | Re: LilyPond 2.5: isinf macro/function/template |
Date: | Sun, 28 Nov 2004 16:25:55 +0100 |
Hi Andreas,I tried to compile your two files here on MacOS X. The C file worked right away. The C++ file didn't. In my <cmath> most of the macros are indeed "#undef"ed and redefined with template functions (see the attached cmath). But some macros like isinf/isnan are only redefined if _GLIBCPP_USE_C99 is set. I got lilypond 2.5.2 to compile by doing the following things:
- set _GLIBCPP_USE_C99 before #include <cmath> in the files that use isinf/isnan
- replace each occurrence of isinf/isnan with std::isinf/std::isnan I don't know if this breaks compilation on linux. Christian Am 28.11.2004 um 12:05 schrieb Andreas Scherer:
IIRC, MacOS X is based upon "BSD", so it is unclear to me, how this "BSD-conforming" function/macro should be unavailable for use in C++ programs. My best guess is that BSD /only/ has the "isinf" /macro/ in<math.h> and no underlying "isinf" system /function/ reachable through a different interface (like said /template function/ in <cmath> on Linux) /and/<cmath> "#undef"ines exactly this macro.Hopefully, some member with MacOS eXperience can find a compliant solution tothe problem.
cmath.zip
Description: Zip archive
mac.patch.zip
Description: Zip archive
[Prev in Thread] | Current Thread | [Next in Thread] |