Como o código-fonte desta ferramenta wkhtmltoimage está disponível, eu sugiro que você recompile da fonte com o glibc nativo do seu sistema. Provavelmente será ainda mais rápido do que recompilar a glibc, o que não é uma tarefa fácil.
Um executável estaticamente vinculado já inclui código para todo o C
chamadas de biblioteca que precisa fazer, então você não pode compilar separadamente um novo
glibc e ligar o executável a ele. No entanto, programas usando glibc
nunca são completamente estáticas: algumas chamadas de biblioteca (todas aquelas conectadas
com o "Serviço de Nomes", ou seja, getuid()
e similar) ainda fazem uso
de módulos carregados dinamicamente (os arquivos libnss*.so
normalmente encontrados
em /lib
). Provavelmente é por isso que o programa está falhando: é
procurando por algum módulo NSS, mas só pode encontrar glibc2.3
.
Se você realmente quer seguir a estrada de recompilar a glibc, o seguinte poderia funcionar (Aviso: não testado!):
-
configure o glibc2.4 para instalar em um diretório não-sistema , por exemplo.
/usr/local/glibc2.4
, depois compile e instale; -
execute
wkhtmlto*
especificando-o como o primeiro componente no caminho de pesquisa do vinculador dinâmico (LD_LIBRARY_PATH
):env LD_LIBRARY_PATH = / usr / local / glibc2.4 / lib wkhtmltoimage ...
Atualização: Isso não foi tão fácil: ter duas bibliotecas distintas no sistema requer mais do que apenas recompilar / instalar, porque a libc procurará pelo vinculador de tempo de execução e pelos módulos NSS de carga dinâmica em locais fixos. O programa rtldi permite instalar diferentes versões da GNU libc em um único sistema Linux; sua página da web tem instruções (mas essa é uma tarefa de nível de especialista, então elas definitivamente não são passo a passo passo a passo).
Deixem-me salientar novamente que será muito menos trabalhoso recompilar wkhtmltoimage
...