Samir, Esses dias, quando enfrentava problemas semelhantes de portabilidade, conheci o carton que me ajudou muito.
Da uma olhada, ele é capaz de gerar uma pasta bundle com todas as dependências e basta ir no servidor remoto e executar um: carton install --cached --deployment E depois um: carton exec script.pl Outra dica legal que encontrei foi usar o plenv para cuidar das versões de perl... Abraços, Em 30/09/2014 15:51, "Samir Cury" <samircu...@gmail.com> escreveu: > Galera, > > Escrevi um codigo basico para uma tarefa trivial. Problema : Usei o CPAN > demais e tenho muitas dependencias. Vou rodar o codigo em sistemas remotos > onde so e garantido existir o Perl + core modules. > > Pensei em usar o PAR, que ja me cria um executavel com "todos os modulo" > (-B). Perfeito. > > Nem tanto. Uma vez que consigo o executavel, ele reclama de nao achar o > Variable::Magic [1]. > > Porem o .pl original roda tranquilo no mesmo sistema : > > -bash-4.1$ ./report-fjr-couch.pl --fjr=FrameworkJobReport.xml --couchurl= > http://a.cloudant.com --db=tr-benchmarks > CouchDB::Client::Doc=HASH(0x1286d60) > > O erro ate fez sentido uma vez que percebi que o sistema que usei para > gerar o executavel nao tinha o Variable::Magic instalado. Imaginei que > instalando e rodando de novo com -B iria incluir o modulo. Nada. > > Sendo mais concreto, aqui estao os "pp s" que tentei : > > pp -B -o report-fjr-couch report-fjr-couch.pl > pp -B -P -o report-fjr-couch report-fjr-couch.pl > pp -B -p -o report-fjr-couch report-fjr-couch.pl > > Mesmo problema em todos. > > Descricao das opcoes : > > http://search.cpan.org/~rschupp/PAR-Packer-1.022/lib/pp.pm > > Caso queiram ver o codigo, aqui esta, mas fiquem tranquilos, admito e sei > que nao foi feito para ser bonito, mas funciona : > > > https://github.com/samircury/CMSSW-benchmarks/blob/master/condor/report-fjr-couch.pl > > Alguem ja passou por uma situacao parecida ou teria dicas de como resolver? > > Valeu! > > [1] : > > -bash-4.1$ ./report-fjr-couch --fjr=FrameworkJobReport.xml --couchurl= > http://a.cloudant.com --db=tr-benchmarks > Could not find a suitable B::Hooks::EndOfScope implementation: Can't > locate Variable/Magic.pm in @INC (@INC contains: CODE(0x1e1aca0) > /tmp/par-6e697374657374/cache-9f11098dccd910be2e44325e17711ef504029e65/inc/lib > /tmp/par-6e697374657374/cache-9f11098dccd910be2e44325e17711ef504029e65/inc > CODE(0x1aea050) CODE(0x1aea4d0)) at Module/Runtime.pm line 317. > BEGIN failed--compilation aborted at B/Hooks/EndOfScope/XS.pm line 17. > Compilation failed in require at Module/Runtime.pm line 317. > Can't locate B/Hooks/EndOfScope/PP/FieldHash.pm in @INC (@INC contains: > CODE(0x1e1aca0) > /tmp/par-6e697374657374/cache-9f11098dccd910be2e44325e17711ef504029e65/inc/lib > /tmp/par-6e697374657374/cache-9f11098dccd910be2e44325e17711ef504029e65/inc > CODE(0x1aea050) CODE(0x1aea4d0)) at Module/Runtime.pm line 317. > BEGIN failed--compilation aborted at B/Hooks/EndOfScope/PP.pm line 29. > Compilation failed in require at Module/Runtime.pm line 317. > at B/Hooks/EndOfScope.pm line 22 > BEGIN failed--compilation aborted at B/Hooks/EndOfScope.pm line 26. > Compilation failed in require at namespace/clean.pm line 11. > BEGIN failed--compilation aborted at namespace/clean.pm line 11. > Compilation failed in require at JSON/Any.pm line 11. > BEGIN failed--compilation aborted at JSON/Any.pm line 11. > Compilation failed in require at CouchDB/Client.pm line 9. > BEGIN failed--compilation aborted at CouchDB/Client.pm line 9. > Compilation failed in require at script/report-fjr-couch.pl line 6. > BEGIN failed--compilation aborted at script/report-fjr-couch.pl line 6. > > > _______________________________________________ > Rio-pm mailing list > Rio-pm@pm.org > http://mail.pm.org/mailman/listinfo/rio-pm >
_______________________________________________ Rio-pm mailing list Rio-pm@pm.org http://mail.pm.org/mailman/listinfo/rio-pm