Permit me to expand on this (and also be a little picky in the process
You'll get good milage from 'nmake', but better milage from 'dmake' (
http://search.cpan.org/dist/dmake/ ).
2) Install MinGW
3) Install ExtUtils::FakeConfig
As of build 815 (or thereabouts) of ActiveState perl, it's not necessary to
install ExtUtils::FakeConfig, as these recent builds of ActivePerl will work
seamlessly with MinGW and nmake/dmake. (And there's no need to invoke the
'-MConfig_m switch either.)
However, ActiveState didn't quite get it right, and for builds 815 to 820
there's a bug or two that needs fixing if you want to go down this path. See
http://www.perlmonks.org/index.pl?node_id=614808 .
The latest build of ActivePerl (822) *does* apparently get it right. Afaik
there are no bugs to fix wrt the use of MinGW and nmake/dmake on build 822.
Then change the standard Perl module install mantra slightly:
perl -MConfig_m Makefile.pl
make
make test
make install
The only change is the addition of -MConfig_m when running Makefile.pl.
Sometimes (rarely) when using ExtUtils::FakeConfig it's not sufficient to
simply run 'perl -MConfig_m Makefile.PL'. PDL and Inline::C are two modules
that won't build that way - because their build procedures run 'perl blah',
but need to run 'perl -MConfig_m blah'. To build such modules it's best to:
set perl5opt=-MConfig_m
perl Makefile.PL
nmake test
nmake install
That ensures that Config_m.pm is loaded *every* time that perl is run -
which is exactly what's needed when building (and running) PDL, Inline::C,
Inline::CPP, and some others.
Cheers,
Rob