SDL error at startup with hxcpp 4.3.2
Hello.
ARMv7 version of the app built with hxcpp 4.3.2 crashes with the following error message:
System.err: dlopen failed: cannot locate symbol "__atomic_compare_exchange_4" referenced by "/data/app/~~sBMWrGZPZPj4nQeFuo06Pw==/air.com.pozirk.allinonesolitaire-AViWyfAWgWMm3IY3R-_lDg==/lib/arm/libApplicationMain.so"...
Eveyrthing is fine with hxcpp 4.2.1. Also ARMv64 seems to work fine. More details are here: https://community.openfl.org/t/sdl-error-on-some-android-devices-at-startup/13741/11?u=pozirk
Let me know, if you need more info. Thank you.
same error
This problem is caused by hxcpp using the incorrect abi triple for armv7. It was using arm-linux-androideabi instead of armv7a-linux-androideabi. I was able to reproduce by excluding arm64 from the app build to force the app to run in armv7 mode.
This was fixed in #992, with these patches in particular: https://github.com/HaxeFoundation/hxcpp/compare/ad8fabffbe6306c48ef8fc1ad4b6451f8931c5c1..bc891ed426440957a78a68a0c6f9858cf685d0bd
This patch also makes sure this would be reported at link time if it ever happened again somehow: 66b8f880744cff339c925aeb52a3b8328cf9f300
Great, thanks a lot!