Details
-
Bug
-
Resolution: Invalid
-
P1: Critical
-
None
-
5.10.0
-
None
Description
To reproduce (my machine was Mac OS 10.12.6 but I'm sure the issue is the same for other hosts)
- Download and install latest Android NDK
- Set up a Qt kit using the latest NDK as well as android-clang mkspecs
- Build and run an example, e.g. "Qt Quick Controls 2 - Gallery"
- The app will fail at runtime with the error mentioned in the subject
I assume this is because the Qt shared libraries (libQt5xxx.so) still link against gnustl_shared.so and not the new libc+ , whereas the android-clang mkspecs clearly set libc+++ as the STL to use and not gnustl_shared.
According to the Android documentation you can only have one STL in use per app (https://developer.android.com/ndk/guides/cpp-support.html).
Btw. the android-g++ mkspecs still link with gnustl_shared, however both GCC/G++ as well as gnustl_shared are outdated Android assets and are not recommended any more by Google. Clang and libc++ are recommended instead.