Riyas Ahamed
Riyas Ahamed

Reputation: 119

How to get source code of .so file in android

I want to see source code of shared object library (so) file in android. how can i convert .so binary file to native c/c++ code.

Upvotes: 7

Views: 13932

Answers (1)

Raja Jitendra
Raja Jitendra

Reputation: 21

The purpose of making an so file is to NOT share the source code, no matter if it is android or not. This is intentionally designed this way so as not to open the design. Following this, many firms share .so file (machine instructions) keeping their design confidential.

However, if you are keen to know what the .so file contains, you may read the ELF (Executable and Linkable Format) of the library. command

readelf -a yourLibraryName.so > yourLibraryName_elf.txt

The output contains symbol table. You may search for the function names, global variables etc from the generated text file.

More details of the contects here http://www.skyfree.org/linux/references/ELF_Format.pdf

Upvotes: 2

Related Questions