Difference between revisions of "Perl Modules"

From SlackWiki
Jump to navigation Jump to search
m (→‎Getting To The CPAN Prompt: REMOVED perl MCPAN and ADDED cpan)
(ADDED: upgrade modules)
 
(One intermediate revision by the same user not shown)
Line 12: Line 12:


==Listing The Installed Modules==
==Listing The Installed Modules==
From the BASH prompt:


'''Easy way'''
'''Easy way'''
Line 32: Line 33:


==Installing New Modules==
==Installing New Modules==
From the CPAN shell prompt, type:
From the CPAN prompt, type:


     install <Some::Module>
     install <Some::Module>
Line 40: Line 41:
==Removing Modules==
==Removing Modules==


A clean way is by using this Perl program:
A clean way is by using this Perl program from the BASH prompt:


     #!/usr/bin/perl -w
     #!/usr/bin/perl -w
Line 56: Line 57:
     print "removing $packfile\n";
     print "removing $packfile\n";
     unlink $packfile;
     unlink $packfile;
==Upgrade Modules==
From the CPAN prompt, type:
    upgrade MODULE::NAME (to upgrade an individual module)
'''or'''
    upgrade (to upgrade ALL modules)

Latest revision as of 19:48, 29 August 2012

Getting To The CPAN Prompt

To administer your Perl modules you must use the CPAN prompt. To get to the CPAN prompt, as root type:

cpan

If this is the first time that you have entered the CPAN shell, you will be asked some set-up questions that will allow the shell to access CPAN's servers to get modules. Just read the questions and answer them.

If you ever need to re-run the set-up again, enter the CPAN shell and then type:

o conf init

Listing The Installed Modules

From the BASH prompt:

Easy way

    instmodsh
    l (L)


Hard way use this Perl program:

    #!/usr/bin/perl
    use ExtUtils::Installed;
    my $instmod = ExtUtils::Installed->new();
    foreach my $module ($instmod->modules())
    {
    my $version = $instmod->version($module) || "???";
    print "$module -- $version\n";
    }


Installing New Modules

From the CPAN prompt, type:

    install <Some::Module>


Removing Modules

A clean way is by using this Perl program from the BASH prompt:

    #!/usr/bin/perl -w
    use ExtUtils::Packlist;
    use ExtUtils::Installed;
    $ARGV[0] or die "Usage: $0 Module::Name\n";
    my $mod = $ARGV[0];
    my $inst = ExtUtils::Installed->new();
    foreach my $item (sort($inst->files($mod)))
    {
    print "removing $item\n";
    unlink $item;
    }
    my $packfile = $inst->packlist($mod)->packlist_file();
    print "removing $packfile\n";
    unlink $packfile;


Upgrade Modules

From the CPAN prompt, type:

    upgrade MODULE::NAME (to upgrade an individual module)

or

    upgrade (to upgrade ALL modules)