file comando para mostrar “para GNU / LINUX 2.x.x” também para bibliotecas compartilhadas

0

Usando o comando

file my_executable_binary

Eu recebo informações como esta:

ELF 32-bit LSB executable, ARM, version 1 (SYSV), for GNU/Linux 2.6.34, dynamically linked (uses shared libs), stripped

mas para lib compartilhada:

file my_shared_lib.so 

Eu só recebo informações

ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, stripped

É possível obter também a parte for GNU/Linux 2.6.34 ao inspecionar uma biblioteca compartilhada?

    
por Aksel Willgert 16.10.2014 / 07:43

1 resposta

1

A linha for GNU/<kernel> <kernel-version> em file saída é criado a partir de uma nota seção do binário ELF 1 . Se file não produzir esta linha, então não há uma nota apropriada no binário 2 e o utilitário não tem como saber para imprimi-lo.

1 veja PT_NOTE e .note em elf (5)

2 porque lida com cada nota

    
por 16.10.2014 / 08:56