Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^6: how to install perlmodules in windowsXP

by veeruch (Sexton)
on Mar 06, 2007 at 10:24 UTC ( [id://603376]=note: print w/replies, xml ) Need Help??


in reply to Re^5: how to install perlmodules in windowsXP
in thread how to install perlmodules in windowsXP

Hi Rob,
if iam giving,
perl -MExtUtils::MakeMaker -e "print $ExtUtils::MakeMaker::VERSION"
out put is:
Set up gcc environment - 3.4.2 (mingw-special) 6.30
perl -v
This is perl, v5.8.8 built for MSWin32-x86-multi-thread (with 25 registered patches, see perl -V for more detail)
Copyright 1987-2006, Larry Wall
Binary build 817 257965 provided by ActiveState http://www.ActiveState.com Built Mar 20 2006 17:54:25
Makefile Information

AR_STATIC_ARGS = cr
DIRFILESEP = ^\
DFSEP = $(DIRFILESEP)
NAME = Net::Telnet
NAME_SYM = Net_Telnet
VERSION = 3.03
VERSION_MACRO = VERSION
VERSION_SYM = 3_03
DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\"
XS_VERSION = 3.03
XS_VERSION_MACRO = XS_VERSION
XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\"
INST_ARCHLIB = blib\arch
  • Comment on Re^6: how to install perlmodules in windowsXP

Replies are listed 'Best First'.
Re^7: how to install perlmodules in windowsXP
by syphilis (Archbishop) on Mar 07, 2007 at 04:10 UTC
    In your perl/lib/ExtUtils/MM_Win32.pm you should have:
    sub init_DIRFILESEP { my($self) = shift; # The ^ makes sure its not interpreted as an escape in nmake $self->{DIRFILESEP} = $NMAKE ? '^\\' : $DMAKE ? '\\\\' : '\\'; }
    Change the code so that it is as above, and see if that fixes things. (Remove the existing Makefile and start with 'perl Makefile.PL' again.) The fact that you have '^\' leads me to believe that ActivePerl is probably finding 'nmake' - and writing a Makefile that is compatible with 'nmake', not 'dmake'. ActivePerl will accept either - it will wrtite a Makefile suited to the one that it finds first when searching the path environment variable. Both 'nmake' and 'dmake' should work fine with the MinGW compiler on ActiveState perl, so it shouldn't really matter which is found first. (As I've mentioned elsewhere, my personal preference is 'dmake' - but feel free to stick with 'nmake' if you like.) But if ActivePerl has written a Makefile to be used with 'nmake' then you can't build using 'dmake' - and if the Makefile has been written for use with 'dmake' then you can't use 'nmake'.

    To verify precisely which flavour of make is being found, run:
    perl -V:make
    That will tell you which 'make' utility you need to use.
    Let us know if that still doesn't work.

    Cheers,
    Rob Update:Rewritten .... to be hopefully a little clearer and more to the point
      Hi Rob,
      My code in perl/lib/ExtUtils/MM_Win32.pm same as you.
      sub init_DIRFILESEP { my($self) = shift; # The ^ makes sure its not interpreted as an escape in nmake $self->{DIRFILESEP} = $NMAKE ? '^\\' : $DMAKE ? '\\\\' : '\\'; }
      perl -V:make is giving
      make='nmake';
      then i can't use dmake?.
        Yes - you'll be able to use 'dmake' - but first you need to make sure that 'dmake.exe' is going to be found before 'nmake.exe'.You could do that by renaming 'nmake.exe' (eg to 'nmake-hide.exe') - but that would mean that 'nmake.exe' never gets found. Or you could remove the location of 'nmake.exe' from the path - but that would mean that other programs in the same folder also don't get found by default. Or you could re-arrange the order of the path so that the location of 'dmake.exe' occurs before the location of 'nmake.exe'.

        Cheers,
        Rob

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://603376]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others musing on the Monastery: (3)
As of 2024-04-24 04:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found