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

Re: Cant get a specific module.

by crazyinsomniac (Prior)
on Jul 06, 2002 at 12:19 UTC ( #179820=note: print w/ replies, xml ) Need Help??


in reply to Cant get a specific module.

So what version of PPM do you have?

I have always found the following to work best, especially with the latest version of ppm (version 3)

always ppm>search module then describe module then install module

If there is a version compatible with your perl/platform, then it'll get installed.

In this case, no such module available. Here is a session I just experienced using ppm3

ppm> s Email Searching in Active Repositories 1. Log-Dispatch [1.80] Uniform logging interface to multiple ou +tputs 2. Email-Find [0.02] Find RFC 822 email addresses in plain te +xt 3. CGI-Untaint-email [0.03] validate an email address 4. Email-Valid [0.13] Check validity of Internet email address +es ppm> d 2 ==================== Package 2: Name: Email-Find Version: 0.09 Author: MIYAGAWA Tatsuhiko (miyagawa@bulknews.net) Title: Email-Find Abstract: Find RFC 822 email addresses in plain text Prerequisites: 1. Email-Valid 0.0 2. MailTools 0.0 3. Test-Simple 0.0 Available Platforms: 1. i686-linux-thread-multi ==================== ppm> rep desc 1 Describing Active Repository 1: Name: win Location: http://theoryx5.uwinnipeg.ca/cgi-bin/ppmserver?urn:/PPMServe +r Type: PPMServer 2.0 ppm> rep desc 2 Describing Active Repository 2: Name: PPM Location: http://www.ActiveState.com/cgibin/PPM/ppmserver.plex?urn:/PP +MServer Type: PPMServer 2.0 ppm> rep desc 3 Describing Active Repository 3: Name: crazy Location: http://crazyinsomniac.perlmonk.org/perl/ppm Type: Webpage ppm> rep desc 4 Describing Active Repository 4: Name: PPM3 Location: http://ppm-ia.ActiveState.com/PPM/ppmserver.plex?urn:/PPM/Se +rver/SQL Type: PPMServer 3.0 ppm> rep desc 5 Describing Active Repository 5: Name: rto Location: http://rto.dk/packages/ Type: Webpage ppm> rep desc 6 Describing Active Repository 6: Name: xray Location: http://www.xray.mpe.mpg.de/~ach/ptk/ppm Type: Webpage ppm>
So what did I do next? well I went to http://search.cpan.org and downloaded it, and installed it (I had all the prerequisited and such).

Then, out of the goodness of my heart, I put all this stuff up on my PPM package repository.

So if you do a ppm> rep add crazy http://crazyinsomniac.perlmonk.org/perl/ppm you can use ppm to get and install it.

At my repository you can also find the following useful tidbit

=pod one time, ppm was giving me grief, and would not install a local copy of Wx, so I cracked it open, and I came up with the following (I had extracted the tarball, and in my current directory I had the blib directory, which is practically all that a ppm package contains, so I typed 'perl' and then pasted the following in. I could turn it into a nice commandline program ... maybe I will sometime soon ;). =cut #!/usr/bin/perl -w use Cwd; use strict; use Config; use ExtUtils::Install; use ActivePerl::DocTools; my %current_package; ###################################################################### +#################### #$current_package{'NAME'} = 'Wx'; print "Enter the package name :"; $current_package{'NAME'} = <STDIN>; chomp($current_package{'NAME'}); ###################################################################### +########### my $inst_archlib = $Config{installsitearch}; my $inst_root = $Config{prefix}; my $packlist = MM->catfile("$Config{installsitearch}/auto", split(/-/, $current_package{'NAME'}), ".packlist"); # copied from ExtUtils::Install my $INST_LIB = MM->catdir(MM->curdir,"blib","lib"); my $INST_ARCHLIB = MM->catdir(MM->curdir,"blib","arch"); my $INST_BIN = MM->catdir(MM->curdir,'blib','bin'); my $INST_SCRIPT = MM->catdir(MM->curdir,'blib','script'); my $INST_MAN1DIR = MM->catdir(MM->curdir,'blib','man1'); my $INST_MAN3DIR = MM->catdir(MM->curdir,'blib','man3'); my $INST_HTMLDIR = MM->catdir(MM->curdir,'blib','html'); my $INST_HTMLHELPDIR = MM->catdir(MM->curdir,'blib','htmlhelp'); my $inst_script = $Config{installscript}; my $inst_man1dir = $Config{installman1dir}; my $inst_man3dir = $Config{installman3dir}; my $inst_bin = $Config{installbin}; my $inst_htmldir = $Config{installhtmldir}; my $inst_htmlhelpdir = $Config{installhtmlhelpdir}; my $inst_lib = $Config{installsitelib}; while (1) { my $cwd = getcwd(); $cwd .= "/" if $cwd =~ /[a-z]:$/i; eval { ExtUtils::Install::install({ "read" => $packlist, "write" => $packlist, $INST_LIB => $inst_lib, $INST_ARCHLIB => $inst_archlib, $INST_BIN => $inst_bin, $INST_SCRIPT => $inst_script, $INST_MAN1DIR => $inst_man1dir, $INST_MAN3DIR => $inst_man +3dir, $INST_HTMLDIR => $inst_htmldir, $INST_HTMLHELPDIR => $inst_htmlhelpdir},0,0,0); }; # install might have croaked in another directory chdir($cwd); # Can't remove some DLLs, but we can rename them and try again +. if ($@ && $@ =~ /Cannot forceunlink (\S+)/) { my $oldname = $1; $oldname =~ s/:$//; my $newname = $oldname . "." . time(); unless (rename($oldname, $newname)) { return 0; } } # Some other error elsif($@) { return 0; } else { last; } }

 
______crazyinsomniac_____________________________
Of all the things I've lost, I miss my mind the most.
perl -e "$q=$_;map({chr unpack qq;H*;,$_}split(q;;,q*H*));print;$q/$q;"


Comment on Re: Cant get a specific module.
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (7)
As of 2014-12-27 17:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (177 votes), past polls