in reply to Re: Change make/compiler
in thread Activestate Perl 5.20, Change make/compiler

I think that ActiveState Perl is compiled with MSVC 6 ...

Not any more - 5.20.0 and later are built using dmake and MinGW.

If I were the OP I would probably just build perl from source, using the MSVC toolchain that the OP has already acquired - and use that to build the desired module.
If it's the same version as the ActivePerl already installed, then the installation of Win32::GUI::Grid can then be copied across to the ActivePerl installation.
Update: I've assumed that the MSVC-built perl is going to be built so that it's binary-compatible with ActivePerl.

It's not hard to change compiler and make flavours, but there's also flags and other settings to be fiddled with - and I don't think anyone has sorted out all those changes yet (though I'd be delighted to learn that I'm wrong about that.)

This would be an obvious task for ExtUtils::FakeConfig to address, but I think it currently concerns itself only with the vice-versa case of using MinGW/dmake with MSVC-built perls.

Cheers,
Rob

Replies are listed 'Best First'.
Re^3: Change make/compiler
by Anonymous Monk on Oct 07, 2015 at 00:45 UTC
    hehe  set ACTIVEPERL_CONFIG_DISABLE=1 && D:\perl\zips\ActivePerl-5.16.3\bin\perl.exe  -V:cc -V:ccname -V:ccflags -V:cccdlflags -V:libpth -V:libs -V:_a -V:_o -V:ar -V:cpp -V:cppminus -V:cpprun -V:cppstdin -V:d_attribut -V:d_casti32 -V:i64type -V:ld -V:lddlflags -V:ldflags -V:lib_ext -V:libc -V:libperl -V:longdblsize -V:lseektype -V:make -V:nm -V:obj_ext -V:optimize -V:perlpath -V:perllibs -V:quadtype -V:u64type -V:uquadtype         > ExtUtils-FakeConfig-0.12/spec/ap_cl_5160.txt

    Then you do something like

    s{(".+?\Q\lib\CORE"\E){(PERL)\lib\CORE}g; s{perlpath='.+?\Q\bin\perl.exe';\E}{perlpath='(PERL)\bin\perl.exe';}g;

    So then with ActivePerl-5.16.3 you have

    And then something something ExtUtils-FakeConfig-0.12/Makefile.PL :)

        Also appears to be possible to override via http://docs.activestate.com/activeperl/5.20/lib/ActivePerl/Config.html#Windows-overrides

        Looks outdated to me.
        It says "The value of $Config{cc} will be cl by default" but perl -V:cc says "undef" on my ActivePerl-5.20.0.
        There's also the claim that $Config{make} "will be nmake by default", whereas it's actually "dmake".
        And the focus of that documentation is on replacing 'cl' values with 'gcc' ones, instead of the other way round (as per the op's requirements).

        Cheers,
        Rob