I built my own game engine from the ground up for this project and the hardest problem I have had to solve this entire project remains "how do you build anything at all for Android"
It's occasionally just really shocking that Google still hasn't faced just how bad the developer experience targeting the NDK is. Apple is actively hostile to third party devs yet they were not able to create something as hostile as the Android build system(s) became by accident
It's _FORTIFY_SOURCE. I think that particular symbol is actually something I landed upstream. Bionic is both forwards and backwards compatible (unlike glibc) by versioning symbols based on target API level. Maybe the library was built with a different target API than the app?
That's fascinating :O However I built this library myself, from the same cmake build that built the rest of the apk so's, and UBSAN definitely should not be on. I'm not familiar with FORTIFY_SOURCE… :(
Context is I had a working Android build driven from gradle. The project switched from gradle to a pure CMake-driven build, and now one of the CMake sub-projects is producing a .so that won't load. Which was exactly the fear that drove me to use gradle to begin with :(