I have some pre-compiled so files, so who knows what flags were used to generate them. I'm curious to know which runtime/version of the STL they were compiled with (gnustl_shared? stlport_shared?) to avoid clashes with my own code.
How can I find out from the compiled so files which runtime they were compiled to use?
This is all Android NDK C++ code.
NDK comes with a utility named readelf (under NDK/toolchains). To see which shared STL library is needed for a prebuilt binary, you can run
Version is tricky. The STL shared binaries ship without version information, and I don't believe there exists a process that tests their backwards compatibility. Still, both stlport abd gnustl have been stable for at least two years now.
You can usually determine what compiler was used to build the binary, but no, NDK compilers are not always changed with each NDK release.