Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re^7: Strawberry Perl 5.12.3, CPAN, make file problems (dmake.exe), DFSEP and backslash "\"

by jffry (Hermit)
on Feb 17, 2012 at 17:43 UTC ( [id://954573] : note . print w/replies, xml ) Need Help??


in reply to Re^6: Strawberry Perl 5.12.3, CPAN, make file problems (dmake.exe), DFSEP and backslash "\"
in thread Strawberry Perl 5.12.3, CPAN, make file problems (dmake.exe), DFSEP and backslash "\"

Thanks for the help and insight, Rob. Both you and Eliya got me learning perl make Module internals, and I even learned a new idiom. I absolutely appreciate the effort you've shown in helping me.

However, it was the thought of having to create a kludge for a freshly installed Strawberry Perl that really got me looking closely at what Anonymous was writing about cpan conf options, and that lead to a solution my neat-freak mentality preferred.

  • Comment on Re^7: Strawberry Perl 5.12.3, CPAN, make file problems (dmake.exe), DFSEP and backslash "\"

Replies are listed 'Best First'.
Re^8: Strawberry Perl 5.12.3, CPAN, make file problems (dmake.exe), DFSEP and backslash "\"
by Anonymous Monk on Feb 17, 2012 at 20:03 UTC

    Well, for whatever its worth, strawberry-perl-5.12.3.0.zip does work out of the box

    $ h2xs -b 5.5.0 -AX Titikaka Writing Titikaka/lib/Titikaka.pm Writing Titikaka/Makefile.PL Writing Titikaka/README Writing Titikaka/t/Titikaka.t Writing Titikaka/Changes Writing Titikaka/MANIFEST $ cd Titikaka $ ..\strawberry-perl-5.12.3.0\perl\bin\perl.exe Makefile.PL Checking if your kit is complete... Looks good ... Detected uninstalled Perl. Trying to continue. Have ..\strawb~1.0\perl\lib Want \strawberry\perl\lib Writing Makefile for Titikaka $ dmake cp lib/Titikaka.pm blib\lib\Titikaka.pm

    However, if you set the enviromental variable make to nmake, its the same as passing Makefile.PL make=nmake

    $ set make=nmake $ ..\strawberry-perl-5.12.3.0\perl\bin\perl.exe Makefile.PL Checking if your kit is complete... Looks good Writing Makefile for Titikaka Writing MYMETA.yml and MYMETA.json $ dmake dmake: Error: -- `..\strawberry-perl-5.12.3.0\perl\libConfig.pm' not +found, and can't be made

    So that is the only thing I think it could be, that you have make=nmake in your env for some reason , or maybe DFSEP, nothing else makes sense :)

      I'll be damned! Not only did you nail it again, but I was so blinded by context the first time I checked this that I didn't see the obvious problem until now.

      > set | find "ake" Make=LENOVO

      A bug that only exists on ThinkPads! No wonder I was going nuts (relatively) alone.

      When my mind was scanning env vars before, I totally missed this because the context of the other env vars surrounding it!

      MAC=00FF6816060A Make=LENOVO Model=64758S4 NUMBER_OF_PROCESSORS=2 OS=Windows_NT

      Well, let my thoroughness failure be a warning to all ThinkPad users working with Strawberry Perl.

        Had you followed my advice back then and put a couple of prints in init_MAKE(), you'd have seen it printing "LENOVO", which should've pointed you to the root cause right away...  :P