On Wed, 16 Nov 2005, Sisyphus wrote: > > > > We link directly against perl58.dll. We have tested our current setup > > with a large list of CPAN modules, and haven't found any that would > > build with VC++ but not with MinGW. > > Ok ... sounds good. My only doubt was that it seemed to me that both EU::MM > and module authors assumed that an import lib would be available. Since an > import lib is not, in fact, available I wondered if things might > occasionally come unstuck. (I'm more than happy to believe that such > occurrences will be either non-existent or rare.)
Well, let me correct a little what I said: We do link against perl58.lib, not against perl58.dll. You can only link against an import library and not directly against the dll. This is true for VC++ as well. It just seems like perl58.lib is working fine with at least the latest version of MinGW, so we decided not to bother with creating a redundant libperl.a. > >If you find any, please let me know and we'll investigate how we can fix > >that. > > Sounds like a challenge :-) Sure. :) > First off I tried Inline::C, because that one can be a little curly ... but > no joy there - it builds and performs fine. > > So, I tried PDL using a recent CVS source of that module - which builds fine > on Win32 with either of the following: > (1) MinGW-built perl > (2) MSVC-built perl (using MSVC++ compiler) > (3) MSVC-built perl (using MinGW compiler in conjunction with > ExtUtils::FakeConfig) > > Building with MinGW/dmake and AS build 815 doesn't quite work, however. > Compilation fails early on because an inappropriate 'pdl.h' gets created. It > contains the line: > > typedef __int64 PDL_LongLong; You can probably fix this yourself by providing additional compiler overrides in site/lib/ActivePerl/Config.pm for "i64type", "u64type", "quadtype" and "uquadtype". This would be preferable to modifying pdl.h.PL. We didn't add those overrides yet because to fully support 64 bit ints you will also need additional preprocessor magic in config.h for the predefined Perl types Quad_t, Off_t, I64TYPE, U64TYPE and the LONG_DOUBLESIZE preprocessor constant. This is scheduled to happen in 816. But if PDL picks those definitions out of Config.pm and doesn't use the Perl headers definitions, then this doesn't matter and an ActivePerl::Config override is all that is needed. Cheers, -Jan _______________________________________________ Perl-Win32-Users mailing list [email protected] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
