[Pdx-pm] Perl Development on Windows

Eric Wilhelm ewilhelm at sbcglobal.net
Fri Dec 24 12:42:00 CST 2004


# The following was supposedly scribed by
# David Pool
# on Friday 24 December 2004 11:56 am:

>thankfully I haven't been on a
>Windows box in many years. Can anyone offer suggestions on how to
> make this as good as possible? They'll be pretty new to Perl.

In the three hours that I spent dealing with Perl on a Windows box, 
the most frustrating thing is the braindead shell (which is 
frustrating regardless of whether you're using perl or not.)  The ppm 
install system is okay, as long as you only need modules that are in 
the ActiveState repository (but it looks like there are a lot of 
them.)  If you are trying to do anything with XS or Inline (compiled) 
code, you need to have the Visual C/C++ compiler to be compatible 
with the ActiveState build.  I think I saw something about the Visual 
compiler being available for free now (though it's only the 
command-line version, (so what's visual about it?))

Given all of those issues, I don't think I'd try it without cygwin.  
Then, you get the gnu tools, bash, cpan, tab-complete, etc.

I know it's the smartass answer that everyone expects, but I think the 
way to make it "as good as possible" is to ditch windows.

I setup a Linux box (Debian) in the middle of a windows network, and 
just let everyone that needs to run the code ssh or vnc into it.  For 
about $800, you can get something that will do the job really well 
and be able to remote-admin it (I only have to install/sync to one 
box, and it supports several simultaneous users.) That works really 
well, and keeps me from having to worry about windows-specific issues 
in Perl (I haven't tried it enough to ever run into them, but the 
reading always seems to imply that there are quite a few (e.g. 
binmode(), fork(), etc.)  But, I guess the internals guys are bending 
over backwards to make windows act like a real system, so maybe it's 
not too bad.

--Eric


More information about the Pdx-pm-list mailing list