On Mon, 19 Jan 2009, Jan Dubois wrote:
> Right now you'll get a nice explanation from MakeMaker that your compiler is
> set to Microsoft's Visual Studio compiler, but your LIB and INCLUDE variables
> haven't been set up to match.  It then doesn't generate a Makefile at all.

Looking more closely, this error messages comes from DBi/DBD and is not
generic to MakeMaker. :(
 
> If you set $Config{cc} to the empty string MakeMaker will blindly insert this
> into the generated Makefile and you get a bunch of warnings when you run
> `nmake` that the '-c' command cannot be found.
>
> If the "broken" version produces a sensible error message, and the "correct"
> version produces a bunch of gibberish, then I prefer the brokenness.

Standard Makemaker will blindly insert $Config{cc} and `nmake` will then 
complain:

    'cl' is not recognized as an internal or external command,

This is still slightly better than

    '-c' is not recognized as an internal or external command,

Module::Install gives proper error messages, regardless if $Config is set to
'' or 'cl':

    Error (9): OS unsupported: Compiler used to build perl not specified in 
perl configuration
or

    Error (8): OS unsupported: Compiler used to build perl ('cl') not found

I haven't checked Module::Build yet.

> I'm happy to get ActivePerl to change the value of $Config{cc} when no 
> compiler
> is found once the build tools do something sensible with an empty setting.

The status quo still looks preferable right now, even though the
difference is not as big as I initially thought it would be.

Cheers,
-Jan

Reply via email to