Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
6.5.0
-
None
-
android
-
-
a3cb388ea (dev), b90c9b865 (6.5.1), 864ba0382 (6.5)
Description
Qt6AndroidMacros in Qt 6.5.0 generated JSON file android-TARGET-deployment-settings.json with invalid syntax (there is extra comma at the end of array extraLibraryDirs), when openssl 3 libraries are added as QT_ANDROID_EXTRA_LIBS
(see attached `invalid-deployment-settings.json`)
set_property(
target_link_libraries(<my_target_name> PUBLIC OpenSSL::OpenSSL OpenSSL::Crypto)
TARGET <my_target_name>
PROPERTY QT_ANDROID_EXTRA_LIBS <path>/lib/libcrypto_3.so
<path>/lib/libssl_3.so
)
for associated build error see attached file `build-error.txt`
It is possible to create valid JSON deployment settings when set(QT_NO_COLLECT_IMPORTED_TARGET_APK_DEPS TRUE) is defined at the top of main CMakeLists.txt (see attached `ok-deployment-settings.json`)
This is likely caused by new code between Qt 6.4.2 we been using before and Qt 6.5.0 in file lib/cmake/Qt6Core/Qt6AndroidMacros.cmake that tries to automatically build up CMake variable qt_android_extra_library_dirs.
all build code is open-source and could be found on https://github.com/MerginMaps/input