<div dir="ltr">Opa,<div><br></div><div><span style="color:rgb(0,0,0);font-family:'Courier New',courier,monaco,monospace,sans-serif;font-size:13px">> Isso me faz lembrar porque eu já sai e entrei da SP.pm várias</span></div>

<div><span style="color:rgb(0,0,0);font-family:'Courier New',courier,monaco,monospace,sans-serif;font-size:13px">> vezes...</span></div><div><div><br></div><div>Editar o Makefile diretamente é um porre. Se vc recorrer a isso com sucesso merece uma medalha sim!</div>

<div><br></div><div>Talvez o lance das variáveis de ambiente seja uma questão de "tempos".</div><div><br></div><div>Variáveis do tipo INCLUDE* normalmente são utilizadas para apontar para os headers, ou seja, os arquivos .h dos fontes do código em C. Normalmente eles são distribuídos em pacotes *-dev, mas no seu caso, estão nos fontes que você está compilando.</div>

<div><br></div><div>Já LD_LIBRARY_PATH aponta para onde o ld deve olhar pra encontrar os binários das bibliotecas compartilhadas, normalmente *.so.</div><div><br></div><div>As bibliotecas compartilhadas precisam ser encontradas em dois tempos "durante a compilação" e durante a execução.</div>

<div><br></div><div>No primeiro caso, pra ser mais específico, é na etapa de link-edição, que acorre logo após a compilação, antes de gerar o seu executável (ou lib).</div><div><br></div><div>A LD_LIBRARY_PATH precisa apontar pros .so que você compilou, tanto no momento da compilação do seu módulo (build) quanto durante a execução.</div>

<div><br></div><div>Na mensagem:</div><div><br></div><div>"<span style="font-size:13px;font-family:arial,sans-serif">Can't load '/home/alcjunio/.cpan/build/</span><u style="font-size:13px;font-family:arial,sans-serif"></u><span style="font-size:13px;font-family:arial,sans-serif">Ne</span><span style="font-size:13px;font-family:arial,sans-serif">t-SSLeay-1.64-8kuViY/blib/</span><u style="font-size:13px;font-family:arial,sans-serif"></u><span style="font-size:13px;font-family:arial,sans-serif">arch</span><span style="font-size:13px;font-family:arial,sans-serif">/auto/Net/SSLeay/SSLeay.</span><u style="font-size:13px;font-family:arial,sans-serif"></u><span style="font-size:13px;font-family:arial,sans-serif">so</span>"</div>

<div><br></div><div>O erro acontece no momento em que o script de teste está tentando carregar o SSLeay.so que foi gerado durante o build.</div><div><br></div><div><br></div><div><span style="font-family:arial,sans-serif;font-size:13px">"The perl application attempted to load /home/alcjunio/.cpan/build/</span><u style="font-family:arial,sans-serif;font-size:13px"></u><span style="font-family:arial,sans-serif;font-size:13px">Net</span><span style="font-family:arial,sans-serif;font-size:13px">-SSLeay-1.64-8kuViY/blib/</span><u style="font-family:arial,sans-serif;font-size:13px"></u><span style="font-family:arial,sans-serif;font-size:13px">arch/</span><span style="font-family:arial,sans-serif;font-size:13px">auto/Net/SSLeay/SSLeay.so **which requires text relocation**"</span></div>

<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Com certa licença poética, bibliotecas compartilhadas guardam os endereços de seus símbolos de forma relativa. Durante o load a aplicação carrega o código e o coloca em endereços que ela conheça, mas que podem variar de execução pra execução. Tipo um IP variável, alocado via DHCP.</span></div>

<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Se não fosse assim, cada vez que eu criasse uma biblioteca, eu teria que me preocupar em não usar os endereços de memória que outra já use. Como se eu estivesse comprando um IP fixo. Isso é impraticável :)</span></div>

<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">É isso que significa o "text relocation". "text" é o nome do segmento de memória (coisas assembly) onde fica guardada a versão executável do código.</span></div>

<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">"</span><span style="font-size:13px;font-family:arial,sans-serif">This is a potential security problem. Most libraries do not need this permission. Libraries are sometimes coded incorrectly and request this permission."</span></div>

<div><span style="font-size:13px;font-family:arial,sans-serif"><br></span></div><div><span style="font-size:13px;font-family:arial,sans-serif">Não estou conseguindo associar o nome à pessoa nesse trecho.</span></div><div>

<span style="font-size:13px;font-family:arial,sans-serif"><br></span></div><div><span style="font-size:13px;font-family:arial,sans-serif"><br></span></div><div><span style="font-size:13px;font-family:arial,sans-serif">"The SELinux Memory Protection Tests web page explains how to remove this requirement. You can configure SELinux temporarily to allow /home/alcjunio/.cpan/build/</span><u style="font-size:13px;font-family:arial,sans-serif"></u><span style="font-size:13px;font-family:arial,sans-serif">Net</span><span style="font-size:13px;font-family:arial,sans-serif">-SSLeay-1.64-8kuViY/blib/</span><u style="font-size:13px;font-family:arial,sans-serif"></u><span style="font-size:13px;font-family:arial,sans-serif">arch/</span><span style="font-size:13px;font-family:arial,sans-serif">auto/Net/SSLeay/SSLeay.so to use relocation as a workaround, until the library is fixed."</span></div>

<div><span style="font-size:13px;font-family:arial,sans-serif"><br></span></div><div><span style="font-size:13px;font-family:arial,sans-serif">Então há um workaround, é feio, mas vai funcionar.</span></div><div><span style="font-size:13px;font-family:arial,sans-serif"><br>

</span></div><div><span style="font-size:13px;font-family:arial,sans-serif"><br></span></div><div><span style="font-size:13px;font-family:arial,sans-serif">"Please file a bug report against this package."</span><br>

</div><div><br></div><div><br></div><div>***</div><div><br></div><div>Sim, eu não adicionei nada relevante que possa te ajudar e não sei como funcionam as configurações do SELinux mas ao pesquisar pela mensagem de erro no Google, encontrei esses dois links com workarounds pra fazer funcionar.</div>

<div><br></div><div><a href="http://docs.fedoraproject.org/en-US/Fedora/13/html/SELinux_FAQ/index.html#faq-entry-unconfined_t">http://docs.fedoraproject.org/en-US/Fedora/13/html/SELinux_FAQ/index.html#faq-entry-unconfined_t</a><br>

</div><div><br></div><div><a href="http://www-01.ibm.com/support/docview.wss?uid=swg21268209">http://www-01.ibm.com/support/docview.wss?uid=swg21268209</a><br></div><div><br></div><div>Meu chute, e é só um chute, porque repito, não sei como funcionam as configurações do SELinux, é que ele não deixa uma aplicação carregar uma biblioteca compartilhada que esteja fora de diretórios padrão.</div>

<div><br></div><div>[]'s</div><div><br></div><div><br></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-06-18 12:39 GMT-03:00 Alceu R. de Freitas Jr. <span dir="ltr"><<a href="mailto:glasswalk3r@yahoo.com.br" target="_blank">glasswalk3r@yahoo.com.br</a>></span>:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,255);font-family:'Courier New',courier,monaco,monospace,sans-serif;font-size:10pt">

Isso me faz lembrar porque eu já sai e entrei da SP.pm várias vezes...<br><div><br></div><div style="display:block"> <div style="font-family:'Courier New',courier,monaco,monospace,sans-serif;font-size:10pt"> <div style="font-family:HelveticaNeue,'Helvetica Neue',Helvetica,Arial,'Lucida Grande',sans-serif;font-size:12pt">

 <div dir="ltr"> <font face="Arial"> Em Quarta-feira, 18 de Junho de 2014 11:11, Blabos de Blebe <<a href="mailto:blabos@gmail.com" target="_blank">blabos@gmail.com</a>> escreveu:<br> </font> </div><div class=""> <blockquote style="border-left-width:2px;border-left-style:solid;border-left-color:rgb(16,16,255);margin-left:5px;margin-top:5px;padding-left:5px">

  <br><br> <div><div><div><div dir="ltr">> No pior dos casos, você pode abrir manualmente o Makefile e colocar o<div>>
 diretório estático.</div><div><br clear="none"></div><div>E ganhar uma medalha por isso :)<br></div></div></div></div><br></div> </blockquote>  </div></div> </div>   </div> </div></div><br>=begin disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
<br></blockquote></div><br></div></div></div>