Just a heads up; I’ve started a wiki page on the Android port. Day-to-day details can still be found on the status board, but the wiki page should remain a current landing spot. Sadly, we’re not yet at a point where there are neat screenshots to show, but soon!
Today’s Android hacking notes
Bionic doesn’t support dlopen(NULL, …) to get access to a handle to the currently running program. In fact, it really doesn’t support it, and crashes should you try to do that perfectly normal thing. Should you really need that, though, you can potentially hack it as seen here. I ended up not needing to do this, but it’s there should we need it in the future.
Also, to get all the happy debugging symbols, you can set gdb’s solib-search-path to the symbol-rich versions of the binaries built as part of an android build, at source/out/target/product/generic/symbols/system/lib:source/out/target/product/generic/symbols/system/bin .. this will let you debug all the way from initial program entry in the linker down into whatever libraries you call. If you don’t have symbols, gdb will often lie about $pc when using gdbservers.