Execute um programa com uma nova libc

2

Como faço para executar um programa que foi compilado com glibc 2.14 em um sistema antigo?

Não consigo atualizar nada. Posso baixar o mais novo glibc e de alguma forma o programa o usa em vez do instalado?

    
por glo 10.04.2015 / 17:55

1 resposta

2

Você pode baixar um novo binário glibc, descompactá-lo em algum lugar e executar o programa com

LD_LIBRARY_PATH= /path/to/new/glibc/lib /path/to/new/glibc/lib/ld-linux.so.2 /path/to/program

Executar uma biblioteca alternativa é complicado; você pode precisar instalar um monte de outras bibliotecas compiladas contra esta libc. A maneira mais fácil de executar um programa com uma libc alternativa é instalar uma distribuição mais recente em algum diretório e executar programas selecionados nesse diretório por meio do chroot . Como faço para executar Programas de 32 bits em um Debian / Ubuntu de 64 bits? explica como fazer isso no Debian; você pode seguir instruções semelhantes para instalar um sistema Debian ou Ubuntu em outra distribuição, você só precisa instalar o schroot e o debootstrap. O Debian jessie e o Ubuntu trusty possuem o GLibc 2.19.

Se você não tem permissão de root, use fakechroot ao invés de chroot. É um pouco mais complicado, mas deve funcionar bem o suficiente para instalar bibliotecas suficientes para executar um aplicativo típico.

    
por 09.07.2015 / 02:08

Tags