You can read these files with tools included in the GNU binutils. While GNU binutils is typically installed on Linux systems, this is not the case for Windows. However, they run within Cygwin or minGW under Windows.
Resources:
- Binutils: http://www.gnu.org/software/binutils/
- Cygwin: http://www.cygwin.com/
- MinGW: http://www.mingw.org/
- MinGW Binutils: http://sourceforge.net/projects/mingw/files/MinGW/Base/binutils/
Note that with MinGW (3.), you do not need Cygwin (2.) and compile Binutils (1.) yourself. Binutils is included in MinGW (3.), but you can also try to download just the Binutils part of MinGW (4.).
How to use nm
and readelf
to obtain the information is explained here:
How do I list the symbols in a .so file
If you want to include this functionality into a C++ program, you could either incorporate the source code of these tools (beware of the license!) or call them from within your program. Probably you will need a Cygwin environment to get the source code compile under Windows.
man nm
). Do you need it in C++? – Tabby