This is the mail archive of the
mailing list for the Cygwin project.
Re: newlib and long-double question
On Sat, Apr 9, 2011 at 11:10 PM, N. C. wrote:
> On 4/9/11, marco atzeri <xxxxxxxxxxxxxxxx> wrote:
don't quote email address. On this list is highly unpolite.
>>>>I have recently discovered that the cygwin version I am using (1.7.7)
>>>>doesn't support many long-double function, like sqrtl, modfl, frexpl,
As cgf mentioned they are not implemented "yet" in cygwin
>>>>I have been reading on newlib's website, sourceware.org/newlib, that
>>>>as of version 1.18.0, such long-double functions are now supported.
>> further the newlib announce says:
>> * long double math routines added for platforms where LDBL == DBL
on cygwin LDBL(80 bit) != DBL(64 bit) so we have not such outcome
>> so in reality you gain no additional performance on the double.
>>>>What I can't seem to find out is, what version of newlib is in the
>>>>newest release of cygwin, and if it has this better support for
>>> Cygwin uses whatever is in the newlib tree as of its release date. ?That
>>> means that since Cygwin 1.7.7-1 was released in August 2010* it would
>>> incorporate any newlib changes from 2009. ?That doesn't mean that we would
>>> export every single thing that newlib provides, however. ?If functionality
>>> is missing that means that no one has taken the time to get it working in
>>> the Cygwin DLL.
>> on 1.7.8 most of the missing "double" function were added
>> I thought to implement also the long double but as doubles are 64 bit
>> and long doubles are just 80 bits on windows, I found the effort not worth.
> I have fully updated my cygwin tp 1.7.9(0.237/5/3) and I still get
> this error when I try to build Perl (5.12.3 in this case but same with
> other versions) with uselongdouble enabled in the Configure script,
> which fails with:
> *** You requested the use of long doubles but you do not seem to have
> *** the following mathematical functions needed for long double support:
> *** ? ? sqrtl modfl frexpl
> *** Please rerun Configure without -Duselongdouble and/or -Dusemorebits.
> *** Cannot continue, aborting.
The message is clear "Don' use long double".
Have you checked how the cygwin perl mantainer is doing the things ?
> On a Linux system that I have access to, I see that those functions
> are in /lib/libm.* but cygwin's /lib/libm.* still seems to lack them.
> Is there any work around or alternate version ofthis lib that actually
> has these functions. I honestly do not mean to be rude, but how
> difficult is it to impliment these functions which seem so common in
> most unix-like systems?
It is not overcomplicated to implement it, but it takes time and
someone to do it.
When I implemented all the complex functions (cabs, ccos..) I spent one month
to make it right. A more capable guy will take less surely, but as
mention I see little
benefit moving from 64 to 80 bits so I was not interested to implement it.
> Or did nothing not get updated when I updated
> M. C
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple