----- Original Message ----- From: "Renato Botelho" <rbga...@gmail.com> To: ""Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)"" <freebsd@fug.com.br> Sent: Thursday, June 13, 2013 10:08 AM Subject: Re: [FUG-BR] Perl... sempre ele...
On 06/13/2013 09:54 AM, Edinilson - ATINET wrote: > Caros amigos, gostaria de relatar um problema que tive aqui e saber se > isto > só ocorre comigo... > > Utilizo o FreeBSD desde a versao 3.xx. Não sou um super especialista em > FreeBSD como muitos aqui da lista, mas tambem não sou um iniciante. > Desde que comecei a utiliza-lo que tenho um certo problema com o Perl. > Sempre que atualizo algum software que depende do Perl, é uma novela (se > pesquisarem no historico da lista encontrarão varios casos que relato > problemas). > O erro que normalmente ocorre são com os modulos (os .pm) que não sao > encontrados ou entao com algum arquivo .so que não é encontrado (mesmo > fazendo todos os procedimentos sempre descritos no /usr/ports/UPDATING ou > entao em sites da internet). > > Numa determinada versão do Perl (que não me lembro agora qual), uma boa > alma > resolveu fazer o script perl-after-upgrade que facilitou bastante as > coisas, > e praticamente resolveu estes problemas de atualizações do Perl. > > Pois bem, ontem resolvi atualizar o pacote do Quagga (coisa que faço > constantemente sem maiores problemas) e tive uma surpresa. Como utilizei o > portmaster, veio de "presente" uma atualização do Perl (no meu caso seria > da > 5.14.2 para a 5.14.4). > Quando vi que envolvia o Perl, já fui ler o /usr/ports/UPDATING pois sabia > que tinha surpresas e, LOGO NO INICIO (data 12/06/2013), já tinha um aviso > dizendo que o script perl-after-upgrade foi removido, e era para usar o > portmaster -r perl no lugar. > > A atualização do Quagga foi tranquila *MAS*, a do Perl, COMO SEMPRE, me > deu > uma dor-de-cabeça ENORME. > Logo que terminou, já parou o apache, mrtg, smokeping e tudo o mais que > dependia do Perl com erro de includes não encontrados. Neste ponto, o > Quagga > continuava funcionando. > POREM, no que fui restartar o Quagga só para ter certeza que ele tambem > estava funcionando 100% (visto que ele utiliza Perl para algumas coisas, > vtysh por exemplo), veio a GRANDE surpresa: comecou a dar erro de > libperl.so > não encontrado. > Como é um servidor que roda BGP, nem preciso dizer a correria que foi > visto > que o Quagga não startava e não subia a sessão BGP. > > Resumindo: voces costumam ter estas dores-de-cabeça quando envolve > atualizar > algo que mexa com o bendito PERL no FreeBSD? > Oi Edinilson, > Essa alteração que foi feita no port do perl, mudando o diretório pra > usar apenas major.minor ao invés de major.minor.patchlevel fez com que o > perl-after-upgrade não fosse mais necessário. Agora quando você > atualizar de 5.12.5 pra 5.12.6 o diretório onde todos os pm ficam > continuará sendo 5.12 apenas, então isso vai acabar facilitando os > próximos updates. > Quando você trocar de release do perl, de 5.12 pra 5.14 por exemplo, aí > tem que recompilar tudo mesmo, não tem jeito. > Mas vamos ao problema que ocorreu com você. Quando você atualizou o perl > usando "portmaster -r perl", o quagga foi recompilado? Se ele não foi > então podemos ter um problema do quagga usar o perl mas as dependências > não estarem corretas no port do quagga. Se for isso tem que reportar pro > mantenedor do port. >Agora, se o quagga foi recompilado, não deveria ocorrer o problema. -Caro Marcelo, quando terminou o portmaster não apresentou erro nenhum MAS, como já estou acostumado com estes problemas do Perl, fiz conforme descrito no /usr/ports/UPDATING e rodei o portmaster -r perl que só apresentou um problema relacionado ao Apache22 e foi resolvido. Você chegou a rodar um ldd no binário que é linkado com a lib do perl pra ver se ele estava apontando pra uma lib que não existe mais? -Quando começaram os erros, fiz varias coisas: portmaster --check-depends pkg_libchk PARECIA estar tudo normal. E no final o que vc fez? Apenas recompilou o quagga e tudo voltou a funcionar? -No final acabei bootando num hd espelho que tinha deste servidor, de 1 semana atras.. foi a sorte. O original eu subi em outra maquina e, com calma, fui acertando tudo. Acredito que daqui pra frente os problemas serão mitigados por esse último commit como comentei acima, só fica esperto e se planeja pra recompilar tudo quando você for trocar de série de perl. -Sinceramente, estou torcendo para que isto aconteca pois erros sempre deram, mas o perl-after-upgrade ajudava bastante. O que sempre dá erro no Perl são os .pm. E tem coisa que não adianta, só entrando no shell do cpan e re-instalando tudo manualmente. Com a pkgng essas coisas todas tendem a ficarem mais simples e mais automáticas. Se você tiver chance, começa a usá-lo. -Nao tinha visto sobre o pkgng. Olhei em: https://wiki.freebsd.org/pkgng mas parece que está em beta ainda, é isto? Obrigado Edinilson ------------------------------------------ ATINET Tel Voz: (0xx11) 4412-0876 http://www.atinet.com.br ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd