The symbol changed when the source code was changed from .c
to .cpp
. The dexFileParse
function is part of libdex, and is not public. Not only can't you rely on the name mangling having a specific value, you can't rely on the fact that the function exists or works as you expect it to.
If using a private API is acceptable for your use case, then probing for the function with dlsym
(i.e. try dexFileParse
, then _Z16dexFileParseXXX
) should be fine. If this isn't acceptable, then you should try to find a public API that handles the problem you're trying to solve.