[SP-pm] perlbrew e distribuições Linux antigas

Daniel de Oliveira Mantovani daniel.oliveira.mantovani at gmail.com
Wed Jun 18 09:23:05 PDT 2014


Alceu,

Eu olhei o código fonte do Crypt-SSLeay-0.64 e não tem nenhum lugar
mesmo para passar o header a lib (OPENSSL_LIB e OPENSSL_INCLUDE).

:(

2014-06-18 13:13 GMT-03:00 Blabos de Blebe <blabos at gmail.com>:
> Opa,
>
>> Isso me faz lembrar porque eu já sai e entrei da SP.pm várias
>> vezes...
>
> Editar o Makefile diretamente é um porre. Se vc recorrer a isso com sucesso
> merece uma medalha sim!
>
> Talvez o lance das variáveis de ambiente seja uma questão de "tempos".
>
> 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.
>
> Já LD_LIBRARY_PATH aponta para onde o ld deve olhar pra encontrar os
> binários das bibliotecas compartilhadas, normalmente *.so.
>
> As bibliotecas compartilhadas precisam ser encontradas em dois tempos
> "durante a compilação" e durante a execução.
>
> 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).
>
> 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.
>
> Na mensagem:
>
> "Can't load
> '/home/alcjunio/.cpan/build/Net-SSLeay-1.64-8kuViY/blib/arch/auto/Net/SSLeay/SSLeay.so"
>
> O erro acontece no momento em que o script de teste está tentando carregar o
> SSLeay.so que foi gerado durante o build.
>
>
> "The perl application attempted to load
> /home/alcjunio/.cpan/build/Net-SSLeay-1.64-8kuViY/blib/arch/auto/Net/SSLeay/SSLeay.so
> **which requires text relocation**"
>
>
> 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.
>
> 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 :)
>
> É 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.
>
>
> "This is a potential security problem. Most libraries do not need this
> permission. Libraries are sometimes coded incorrectly and request this
> permission."
>
> Não estou conseguindo associar o nome à pessoa nesse trecho.
>
>
> "The SELinux Memory Protection Tests web page explains how to remove this
> requirement. You can configure SELinux temporarily to allow
> /home/alcjunio/.cpan/build/Net-SSLeay-1.64-8kuViY/blib/arch/auto/Net/SSLeay/SSLeay.so
> to use relocation as a workaround, until the library is fixed."
>
> Então há um workaround, é feio, mas vai funcionar.
>
>
> "Please file a bug report against this package."
>
>
> ***
>
> 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.
>
> http://docs.fedoraproject.org/en-US/Fedora/13/html/SELinux_FAQ/index.html#faq-entry-unconfined_t
>
> http://www-01.ibm.com/support/docview.wss?uid=swg21268209
>
> 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.
>
> []'s
>
>
>
>
> 2014-06-18 12:39 GMT-03:00 Alceu R. de Freitas Jr.
> <glasswalk3r at yahoo.com.br>:
>>
>> Isso me faz lembrar porque eu já sai e entrei da SP.pm várias vezes...
>>
>> Em Quarta-feira, 18 de Junho de 2014 11:11, Blabos de Blebe
>> <blabos at gmail.com> escreveu:
>>
>>
>>
>> > No pior dos casos, você pode abrir manualmente o Makefile e colocar o
>> > diretório estático.
>>
>> E ganhar uma medalha por isso :)
>>
>>
>> =begin disclaimer
>>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>  SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>> =end disclaimer
>>
>
>
> =begin disclaimer
>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>



-- 

-dom

--

Daniel de Oliveira Mantovani
Business Analytic Specialist
Perl Evangelist /Astrophysics hobbyist.
+55 11 9 8538-9897
XOXO


More information about the SaoPaulo-pm mailing list