You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Modern Android tooling defaults to storing native libraries uncompressed and page-aligned within APKs (as opposed to the legacy behaviour where native libraries would be extracted upon app installation).
In turn, the dynamic linker supports loading these shared objects directly from an APK, which are identified by paths containing a !/ delimiter between the name of the APK on disk and the name of the shared object within the APK (ex: /data/app/com.example/base.apk!/lib/x86_64/mylib.so).
Unfortunately, this behaviour breaks symbolication by backtrace-rs.
Here's the result of executing the raw example from an APK via the linker (supported since Android 10):
backtrace-rs fails here because it attempts to open the filepath returned by dl_iterate_phdr, which (in this case) doesn't actually exist in the filesystem.
The text was updated successfully, but these errors were encountered:
Modern Android tooling defaults to storing native libraries uncompressed and page-aligned within APKs (as opposed to the legacy behaviour where native libraries would be extracted upon app installation).
In turn, the dynamic linker supports loading these shared objects directly from an APK, which are identified by paths containing a
!/
delimiter between the name of the APK on disk and the name of the shared object within the APK (ex:/data/app/com.example/base.apk!/lib/x86_64/mylib.so
).Unfortunately, this behaviour breaks symbolication by
backtrace-rs
.Here's the result of executing the
raw
example from an APK via the linker (supported since Android 10):Executing the same binary outside an APK works as expected:
Show output
backtrace-rs
fails here because it attempts to open the filepath returned bydl_iterate_phdr
, which (in this case) doesn't actually exist in the filesystem.The text was updated successfully, but these errors were encountered: