Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Subject: Re: configure and asinl function problem From: Joost Kraaijeveld To: tprince AT computer DOT org Cc: Cygwin In-Reply-To: <4347CC39.6090903@myrealbox.com> References: <1128766196 DOT 20665 DOT 124 DOT camel AT Panoramix> <4347CC39 DOT 6090903 AT myrealbox DOT com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Date: Sat, 08 Oct 2005 16:10:09 +0200 Message-Id: <1128780609.20665.158.camel@Panoramix> Mime-Version: 1.0 X-IsSubscribed: yes On Sat, 2005-10-08 at 06:40 -0700, Tim Prince wrote: > Maybe you have omitted information, which might explain why you > discarded some obvious possibilities, but here are some points: > newlib doesn't include full support for long double math, as you hinted. The problem is that configure seems to think that there *is* support "long double math": the test succeeds and HAVE_ASINL (and all other double math) is defined. So both compile and link appear to be succesful as far as configure is concerned. Before choosing a solution, I want to understand why the problem is occuring. According to the cited mail however, that is because configure checks the availibility of "long double math" with a short piece of code, supplying *it's own* function definition (and not using e.g. math.h) and linking with *some* libraries. Because I do not understand how configure is doing that (I have looked into the macros but failed to understand them), I do not know what exactly the code is configure is using or to which libraries configure links the executable. I think btw that it is using libstdc++: $ objdump.exe -t libstdc++.a | grep asinl [ 2](sec 1)(fl 0x00)(ty 20)(scl 2) (nx 0) 0x00000020 _asinl > You could supply your own asinl() (easy way: use the built in x87 > atan2l())). > If the function you want is in libstdc++, gcc doesn't see it, but g++ > should see it. > You could fix the config.h manually, if, for example, you have a reason > for running it only under g++, but you want the result to be applicable > to gcc as well. For this moment I edit the config.h but that is not the permanant solution of choise. Maintaining ansi C99 function btw is not my permanent choice either ;-). -- Groeten, Joost Kraaijeveld Askesis B.V. Molukkenstraat 14 6524NB Nijmegen tel: 024-3888063 / 06-51855277 fax: 024-3608416 e-mail: J DOT Kraaijeveld AT Askesis DOT nl web: www.askesis.nl -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/