tdyboc has asked for the wisdom of the Perl Monks concerning the following question:

Having difficulty compiling perl 5.8.5 on an AIX 5.1 64bit system. I'm alittle lost. Using Configure with these options I get the following error -Dprefix=/utilities/perl585-64 -Duse64bitall -Duselongdouble -Aprepend:libswanted="C128 c128 " modfl() found. modfl() prototype NOT found. Checking to see whether your modfl() is okay for large values... I don't understand your modfl() at all. *** You requested the use of long doubles but you do not seem to have *** the following mathematical functions needed for long double support: *** modfl *** Please rerun Configure without -Duselongdouble and/or -Dusemorebits. *** Cannot continue, aborting. Can anyone offer any insight? modfl was found (above). Will this even compile that way on AIX? The c128 libraries were added based on something I read and I'm not really sure if they're valid but either with or without them I get this same error. I'm using Thanks

Replies are listed 'Best First'.
Re: 64bit AIX
by ysth (Canon) on Nov 02, 2004 at 19:53 UTC
    The modfl() found means Configure did locate a library function modfl; the prototype NOT found means it didn't find a prototype for it the include file math.h.

    There's a comment in Configure:

    /* Sigh. many current glibcs provide the function, but do not prototype it. */
    but presumably this isn't glibc :)

    Anyway, in the absence of a prototype in math.h, Configure (and later, perl) will use a prototype of:

    long double modfl (long double, long double *);
    but this doesn't seem to be what your library is expecting.

    I would recommend trying it without the libswanted change.