atoi() missing on Win98, perl extension breaks

Christopher Faylor
Tue Jan 11 16:15:00 GMT 2005

On Tue, Jan 11, 2005 at 12:03:19PM +0100, Corinna Vinschen wrote:
>On Jan 11 08:59, Gerrit P. Haase wrote:
>>Jacek Piskozub wrote:
>>>Gerritt wrote,
>>>>$self->{LIBS} = [q{ -L/lib/w32api -lnetapi32 -lwininet -lversion -lmpr
>>>>-lodbc32 -lodbccp32 -lwinmm -lstdc++ -lole32 -loleaut32 -luuid
>>>>-lcomctl32 -lgdi32 -lcomdlg32 -lntdll }];
>>>>Now the question is which of these libs can be removed and which needs
>>>>to stay?
>>>I believe the real underlying cause is that /lib/w32api/libntdll.a
>>>contains a atoi function header (I see that in
>>>together with a zillion other WinNT/2K/XP functions).  This is wrong
>>>because Win9x have only a very limited set of functions in ntdll.dll.
>>Yes, I thought it is a w32api bug at first too.  Who is the maintainer
>>of w32api?
>The MingW team.  However, the symbols in ntdll.def are there already
>for a long time and they are apparently ok even though it rolls up my
>toe nails.  Also, the fact that 9x has only a limited set of functions
>in this DLL doesn't mean that the NT symbols shouldn't be present.
>Explicit linking against ntdll is the problem here.  I guess the "right
>thing" would be to link against -lcygwin first.

Or not explicitly linking against ntdll.  It will obviously be called in
if it is needed.


Unsubscribe info:
Problem reports:

More information about the Cygwin mailing list