develooper Front page | perl.perl5.porters | Postings from November 2003

Re: MinGW-3.1.0-1 _CRTIMP definition preempting win32.h's

Thread Previous | Thread Next
From:
Rafael Garcia-Suarez
Date:
November 1, 2003 13:57
Subject:
Re: MinGW-3.1.0-1 _CRTIMP definition preempting win32.h's
Message ID:
20031101230223.0c68de80.rgarciasuarez@free.fr
Greg Matheson wrote:
> Recent perls are building for me on Windows 98 with the older
> MinGW-2.0.0-3, but with the new MinGW-3.1.0-1, _pioinfo, 
> imported by win32.h is not being declared as dllimport
> 
> This is due to the _CRTIMP definition in _mingw.h being pulled in
> before win32.h's definition, according to Danny Smith on the 
> mingw-users list.
> 
> See a discussion starting here: 
> https://sourceforge.net/forum/message.php?msg_id=2253759
> 
> With this workaround, 
> 
> greg@7106 ~
> $ diff perl-5.8.2-RC1/win32/win32.h perl-5.8.2-RC1/win32/win32.h~
> 505c505
> < extern __declspec(dllimport) ioinfo * __pioinfo[];
> ---
> > EXTERN_C _CRTIMP ioinfo* __pioinfo[];
> 
> I was able to build perl-5.8.2-RC1 and perl-5.9.0 on Windows 98.

Thanks for the report, but unfortunately I can't integrate it as-is,
to avoid breaking other environments. What are the C preprocessor
symbols that I can check to know whether one is using MinGW 3 or greater
(assuming your patch is needed for MinGW >= 3.0.0 ?)

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About