Come posso trovare la funzione nei file di oggetti condivisi usando le funzioni Objdump e Bash in Linux?

StackOverflow https://stackoverflow.com/questions/9357930

Domanda

Ho una cartella in Linux, che è contenuta diversi file di oggetti condivisi (*.so). Come posso trovare la funzione nei file di oggetti condivisi usando le funzioni Objdump e Bash in Linux?

Ad esempio, il seguente esempio mi viene trovato funzione func1 in mylib.so:

objdump -d mylib.so | grep func1

Ma voglio trovare func1 Nella cartella che è contenuta file di oggetti condivisi. Non conosco il linguaggio bash e come combinare i comandi del terminale Linux.

È stato utile?

Soluzione

nm è più semplice di objdump, per questo compito.
nm -A *.so | grep func dovrebbe funzionare. Il -A La bandiera dice nm Per stampare il nome del file.

Altri suggerimenti

Puoi usare anche usa,

find <path> -name "*.so" -exec nm {} \; | grep func1
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top