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