Hi,
Eric Norum wrote:
Looks like the prototype for finite() has moved from math.h. You'll
have to:
a) find which header file provides this prototype (or macro) -- what
does man finite have to say?
math.h will includes architecture/{ppc,i386}/math.h.
These file defines finite but surrounded by #if shown here.
#if !defined( __STRICT_ANSI__) && !defined(_ANSI_SOURCE) &&
(!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
b) copy src/libCom/osi/os/posix/epicsMath.h to src/libCom/osi/os/
Darwin
and add the include for the header found above
You may not like the idea to add:
#ifdef __cplusplus
extern "C" {
#endif
int finite(double);
#ifdef __cplusplus
}
into epicsMath.h in os/Darwin directory. But seems simpler in this
case.
Noboru
On Nov 4, 2007, at 5:03 PM, Bertrand H.J. Biritz wrote:
Dear Tech-Talk,
so I am one of those Mac fanboys (at least when it comes to the OS)
who installed OS X 10.5 (Leopard) as soon as it came out.
Naturally EPICS will not compile on it - would have been surprised
if
it had. I get the following error message:
../epicsCalcTest.cpp: In function 'double doCalc(const char*)':
../epicsCalcTest.cpp:31: error: 'finite' was not declared in this
scope
../epicsCalcTest.cpp: In function 'void testCalc(const char*,
double)':
../epicsCalcTest.cpp:51: error: 'finite' was not declared in this
scope
../epicsCalcTest.cpp:55: error: 'finite' was not declared in this
scope
../epicsCalcTest.cpp: In function 'int main(int, char**)':
../epicsCalcTest.cpp:170: error: 'finite' was not declared in this
scope
make[3]: *** [epicsCalcTest.o] Error 1
make[2]: *** [install.darwin-ppc] Error 2
make[1]: *** [libCom/test.install] Error 2
make: *** [src.install] Error 2
Did I miss something in the installation instructions?
This is with base-3.14.9 on a PPC.
Thanks,
Bertrand
<noboru.yamamoto.vcf>