ActiveState uses the distribution name for the package name instead of the primary module. For most modules, this just involves replacing the colons with a dash. For other it is completely different. For example, Net::LDAP is in the perl-ldap package. PPM can't map module names to distributions like CPAN can. search.cpan.org is a big help to find out what distributions a module is found in if the default doesn't work.
It is possible to use CPAN (and probably CPANPLUS) or manual install with Windows. ExtUtils::MakeMaker supports and uses nmake on Windows. Binary modules are harder to build because they need the environment used to build Perl. For ActivePerl, this is Visual Studio. Building binaries is just harder on Windows; Module::Build does not help much.
| [reply] |
Good information. However I would like to note that if CPANPLUS and Module::Build work as they are supposed to, then pure Perl modules should be installable without having nmake. That won't help if the module uses XS, but it would help with a large fraction of the modules out there.
| [reply] |
| [reply] |
The idea of a PPM repository is somewhat novel, but ActiveState is certainly not responsible for it.
ExtUtils::Installed and ExtUtils::MakeMaker are.
All ActiveState came up with is an XML format to describe packages, prerequisites (PPD).
The ppm distribution (module utility and related files) are very poorly managed and maintained (just look at the source http://downloads.activestate.com/PPM/PPM-3.00.56-src.tar.gz, no tests of any kind).
| [reply] |