This is the mail archive of the cygwin-developers mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: FW: strtoumax could not be located in...cygwin1.dll


On Wed, Jul 13, 2005 at 04:24:43PM +0100, Dave Korn wrote:
>----Original Message----
>>From: Dave Korn
>>Sent: 13 July 2005 16:13
>
>> ----Original Message----
>>> From: Eric Blake
>>> Sent: 13 July 2005 15:34
>> 
>>>  However, bash-3.0-7 requires cygwin-1.5.18 or better,
>>> because that is when strtoumax was introduced and bash uses it.
>> 
>>   Interesting.  I tried to compile a simple test program that uses
>> strtoumax and it failed.  My dll was built from freshly updated cvs on
>> 20050624; that's a fortnight after strtoumax was added (lacking
>> underscore) to cygwin.din.  I think it _really_ isn't there.
>> 
>>   I'll try again with today's CVS and see what happens.  Just FYI, though,
>> it doesn't seem to be exported from the most recent snapshot version of
>> the dll ....
>
>  Um, ok, how does cygwin.din work?  I really don't get what's going on
>here.  I've got this in cygwin.din:
>
>Index: cygwin.din
>===================================================================
>RCS file: /cvs/src/src/winsup/cygwin/cygwin.din,v
>retrieving revision 1.142
>diff -p -u -r1.142 cygwin.din
>--- cygwin.din  9 Jul 2005 08:22:36 -0000       1.142
>+++ cygwin.din  13 Jul 2005 15:20:48 -0000
>@@ -1393,13 +1393,14 @@ strtol NOSIGFE
> _strtol = strtol NOSIGFE
> strtoll NOSIGFE
> _strtoll = strtoll NOSIGFE
>-strtoimax = strtoll NOSIGFE
>+_strtoimax = strtoll NOSIGFE
> strtosigno NOSIGFE
> strtoul NOSIGFE
> _strtoul = strtoul NOSIGFE
> strtoull NOSIGFE
> _strtoull = strtoull NOSIGFE
> strtoumax = strtoull NOSIGFE
>+_strtoumax = strtoull NOSIGFE
> strupr NOSIGFE
> _strupr = strupr NOSIGFE
> strxfrm NOSIGFE
>dk@mace /usr/build/src/winsup/cygwin>
>
>(note the two differing attempts I've tried for strtoumax and strtoimax;
>neither work), and I've got this in the generated cygwin.def:
>
>dk@mace /usr/build/obj/i686-pc-cygwin/winsup/cygwin> grep strtou cygwin.def
>strtoul
>_strtoul = strtoul
>strtoull
>_strtoull = strtoull
>strtoumax = strtoull
>_strtoumax = strtoull
>
>but I just don't have anysuch symbol in the generated dll:
>
>dk@mace /usr/build/obj/i686-pc-cygwin/winsup/cygwin> nm cygwin0.dll | grep
>strtou
>610cdbf0 T __strtoul_r
>610e3240 T __strtoull_r
>610cdd60 T _strtoul
>610cdd90 T _strtoull
>dk@mace /usr/build/obj/i686-pc-cygwin/winsup/cygwin>
>
>  What am I missing?

The ' = ' affects the import library.  I think the .din file is fine.  You
just need to use the proper import library.

cgf


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]