Kapsin logo

Kapsi Internet-käyttäjät ry

Perlin CPAN-moduulien asennus

CPAN on kokoelma Perl-ohjelmointikielen kirjastoja, joita pystyy automaattisesti asentamaan cpan-ohjelman avulla. Kapsilla käyttäjä voi asentaa nämä kirjastot kotihakemistoonsa tämän ohjeen mukaisesti.

Perlin hakupolun asettaminen

Perlille täytyy aluksi kertoa, mistä se etsii itse asennettuja moduuleita. Sen voi tehdä lisäämällä ~/.bashrc:hen yhden rivin, ja ajamalla vastaavan komennon itse:

user@host:~$ echo 'export PERL5LIB=~/CPAN/lib/perl5' >> ~/.bashrc
user@host:~$ export PERL5LIB=~/CPAN/lib/perl5

Tämä asetus vaikuttaa vain uusiin käynnistettyihin ohjelmiin.

CPAN:in käyttöönotto

Kun PERL5LIB-muuttuja on asetettu, voit käynnistää CPAN:in päätteen komennolla cpan:

user@host:~$ cpan
...
Would you like me to configure as much as possible automatically? [yes]
...
cpan[1]>

Ensimmäisellä käyttökerralla CPAN kysyy joitakin asetuksia. Oletusasetukset saa käyttöön painamalla enteriä näihin. Tämän jälkeen täytyy muuttaa vielä paria asetusta kotihakemistoon asentamista varten. Asetuskomennot alkavat o-kirjaimella, "cpan[1]>" on näytöllä valmiiksi oleva osa:

cpan[1]> o conf makepl_arg INSTALL_BASE=~/CPAN
cpan[2]> o conf prerequisites_policy follow
cpan[3]> o conf commit
commit: wrote '/home/users/user/.cpan/CPAN/MyConfig.pm'

Ensimmäisellä komennolla asetetaan hakemisto, johon Perl-moduulit asennetaan. Toinen komento vähentää hieman CPAN:in kysymien kysymysten määrää. Viimeinen komento tallentaa asetukset tiedostoon ~/.cpan-hakemiston alle.

Pakettien asennus

Esimerkiksi Twitter-protokollan toteuttava Net::Twitter-paketti asennetaan näin:

cpan[4]> install Net::Twitter
...

Asennuksen aikana CPAN saattaa kysyä muutamaan kertaan riippuvuuksien asennuksesta. Näihin voi vastata enteriä painamalla. Jos jokin moduuli on "Optional", ei sitä toki tarvitse asentaa.

Asennuksen testaaminen

Voit testata paketin toimivuutta suoraan komentoriviltä käynnistämällä perlin ja kirjoittamalla use-rivin. Puolipisteen ja rivinvaihdon jälkeen perl ilmoittaa, jos moduulia ei löydy.

user@host:~$ perl
use Net::Twitter;
use Testi;
Can't locate Testi.pm