Início > Programação > A mágica do local::lib

A mágica do local::lib

Só comecei a utilizar o local::lib do Perl a algum tempo atrás e não entendo como não utilizava isto antes :P

Utilizando o local::lib, eliminamos (ou contornamos) 3 problemas:

  • Falta de acesso de root a máquina.
    Apesar de não ser um problema enquanto você desenvolve na sua máquina, pode ser um baita incomodo quando você vai tentar fazer deploy em um servidor ou máquina remota e você só tem acesso a uma conta restrita e não pode usar o cpan para instalar (ou atualizar os) módulos no sistema (ainda bem, pois a segurança morreu de velha…).
  • Futucar com os módulos que fazem o sistema funcionar.
    Eu utilizo um sistema Kubuntu no meu desktop. Nos repositórios do Kubuntu existem pacotes referentes a módulos do Perl, que normalmente não estão na última versão mas na versão testada pelos desenvolvedores do Kubuntu para garantir um bom funcionamento do sistema. Ai você fica no dilema… quer usar as versões novas, mas isso pode cagar todo o seu sistema (como eu já consegui fazer :P), etc…
  • Ser necessário reinstalar todos os módulos ao reinstalar o sistema.
    Normalmente, uma vez por ano eu formato a partição do meu sistema para atualizar para uma versão mais nova. Sem o local::lib, todos os módulos do Perl também iam pra vala. Agora com o local::lib, eles ficam no meu /home (que é uma partição separada) e está tudo sempre pronto para eu utilizar :)

Então, espero que vocês tenham se convencido que utilizar o local::lib é uma boa coisa :P

E vou (tentar) mostrar como é extremamente simples :) Agora, o importante aqui é continuarmos como usuário normal… esqueça do root :)

Primeiro, vamos até a página do CPAN do local::lib, então lá faça o Download da última versão. É fácil de achar, mas se não conseguir faça uma busca por “Download”. Salve o arquivo .tar.gz em qualquer lugar e descompacte-o.

Agora faça:

perl Makefile.PL –bootstrap

E em seguida:

make test && make install

Agora você tem um diretório “perl5” dentro do seu home, e é ai que vai ficar sua “instalação personalizada do Perl” ;)

Falta apenas definir algumas variáveis de ambiente para que o perl ao ser executado por você, enxergue estes módulos antes dos módulos do seu sistema e para isso basta executar na sua shell:

perl -I$HOME/perl5/lib/perl5 -Mlocal::lib

E copiar este conteúdo para o seu .bashrc (ou outro arquivo responsável por definir variáveis de ambiente). Aqui por exemplo o comando acima retornou:

export MODULEBUILDRC=”/home/bruno/perl5/.modulebuildrc”
export PERL_MM_OPT=”INSTALL_BASE=/home/bruno/perl5″
export PERL5LIB=”/home/bruno/perl5/lib/perl5/i486-linux-gnu-thread-multi:/home/bruno/perl5/lib/perl5:$PERL5LIB”
export PATH=”/home/bruno/perl5/bin:$PATH”
Agora basta sair e voltar (ou fazer o seu jeito preferido para que estes exports sejam feitos :) e pronto. Pode instalar módulos, atualizar módulos a vontade que tudo ficará na *sua* instalação =D
Anúncios
Categorias:Programação Tags:,
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: