Desktop application for searching symbols within binaries
When dealing with a large set of binaries in a product, including the 3rd party libs, we often need to know which libs contain particular symbols and which libs use them. Sometimes it can take long to find it out. This tool is aimed to automate this process.
- Searching names within binaries filtered by globs
- PE files support (*.exe and *.dll). CLR/.NET assemblies are not supported.
- Archive and import libraries (*.lib) support.
- COFF files support (*.obj).
- ELF files support (*.so). Not implemented yet.
- Mach-O files support (*.dylib). Not implemented yet.
The most difficult part I faced with was name demangling. At the moment, the toolchain specific facilities demangle the names. Ideally this function should not be bound to the toolchain internals to be able to search symbols in binaries of the other platforms. Also I'm going to make the search process smarter and more open to user's customization.
Currently SymSeek needs CMake and Qt5 framework dev package installed.
cd SymSeek && mkdir build && cd build && cmake .. && cmake --build .
If cmake cannot find Qt, you can point out its location via "-DCMAKE_PREFIX_PATH=<PATH_TO_YOUR_QT_ROOT>" argument. On my Windows PC it is D:\Qt\5.12.1\mingw73_64
.