As noted by Corion, non-binary modules can be installed manually on a Win32 machine if the user has nmake. The procedure is the same as on *nix.

I've never had any luck getting the CPAN module itself to work on Win32 or under Cygwin, but you might take a look at Module::MakeDist. It is designed to make distributions for multiple platforms. If it works, you can create a repository for PPD packages and script an installation for your users. I used to know more about this, but it's been a while. You might poke around something like this. Basically a PPD package is a standardized way of telling Perl Package Manager (PPM) how to install a module. After your create a PPD you tell PPM about your repository (once), then have it search for and install the module. You can run it interactively or from a command-line for easy scripting. For example, to add your repository of PPD files, run

ppm repository add "Spiffy Perl Pkgs" http://spiffy.com/win32/pkgs
Then each module can be installed with

ppm install foo ppm install bar etc.
To run interactively instead of batch-style, type "ppm" and then run the commands without the "ppm" prefix.

Basic Term::Readline with the default stub works fine in the Win32 shell window for me. Make sure extensions, history, and command-line completion are turned on. Vanilla Win32 systems may not have this, so consider running this registry script, or something like it (you can break it out as several scripts if you like):

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor] "CompletionChar"=dword:00000009 "EnableExtensions"=dword:00000001 "PathCompletionChar"=dword:00000009
In this case, I have path and file completions tied to the Tab key. Just use the ASCII # of the char you want. Create a text file called CmdLine.reg or something and then double-click on it, or run it from the command-line (perhaps from a script).

History is enabled through DOSKEY, which is a basic macro program. Consult the help (doskey /?) for more info. The easiest way to auto-enable it is to put the line "doskey" in c:\autoexec.bat. It will be run when a shell window is opened.

Cheers!
Marmot


In reply to Re: Help with porting issues to Win32 by marmot
in thread Help with porting issues to Win32 by PetaMem

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.