Fernando, se entendi o teste, era para nao so usar o -c mas remover os
"--modules". Neste caso falha :

-bash-4.1$ pp -B  -c -o report-fjr-couch report-fjr-couch.pl

Can't locate XML/LibXML/SAX.pm in @INC (@INC contains:
/tmp/par-6e697374657374/cache-25bcda770974f790ce830f7c825dfabc72f693a6/inc/lib
/tmp/par-6e697374657374/cache-25bcda770974f790ce830f7c825dfabc72f693a6/inc
CODE(0x144de00) CODE(0x144e280)) at (eval 67) line 1.

Mas se usar com os --module que citei acima, tudo funciona tranquilo.

Falando nisso, achei interessante o -P, ele poe _tudo_ num arquivao de
texto.

Abs

2014-09-30 18:51 GMT-07:00 Fernando Gmail <fernandocor...@gmail.com>:

> Blz Samir?! Você chegou a testar o -c que o Breno falou?
>
> Fernando
>
> Em 30/09/2014, às 20:48, Samir Cury <samircu...@gmail.com> escreveu:
>
> Matou, Breno!
>
> Estava assumindo por algum motivo que o pp era esperto o suficiente para
> seguir todos os modulos mencionados em "use X::Y;" e as dependencias. Uma
> vez que inclui esses 2 caras :
>
>  pp -B --module=XML::LibXML::SAX --module=Variable::Magic -o
> report-fjr-couch report-fjr-couch.pl
>
> Funcionou perfeito. Outra grande vantagem e que tive que fazer um patch
> local para o CouchDB::Client. Desse jeito e certo que seja la o que for vai
> rodar com o patch.
>
> Ah, o patch estaria no CPAN se o autor respondesse a pull requests. Como
> nao esta, fazemos assim.
>
> Abs,
> Samir
>
> 2014-09-30 16:35 GMT-07:00 breno <br...@rio.pm.org>:
>
>> Samir, o -B adiciona só os módulos core, e o Variable::Magic não é core.
>> Acho que o que vc quer é "--module=Variable::Magic" não?
>>
>> Se não houver código destrutivo em BEGIN's, vale adicionar "-c" pra ele
>> tentar achar dependências de runtime também.
>>
>> Espero que isso ajude. Senão, as outras dicas que o pessoal deu (de
>> carton à bundles de instalação) são muito boas!
>>
>> []s
>>
>> -b
>>
>> 2014-09-30 15:51 GMT-03:00 Samir Cury <samircu...@gmail.com>:
>>
>>> 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
>>
>
> _______________________________________________
> 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
>
_______________________________________________
Rio-pm mailing list
Rio-pm@pm.org
http://mail.pm.org/mailman/listinfo/rio-pm

Responder a