-
Bug
-
Resolution: Invalid
-
P2: Important
-
None
-
6.2.4
-
None
-
CMake version is 3.25.
XCode 13.2.1
MacOS 11.7 Big Sur
When building Qt 6.2 from source for iOS as follows:
/Users/martin/workspace/qt6_local_build/src/qt6/configure -prefix /Users/martin/workspace/qt6_local_build/qt_ios_armv8_64_install -static -xplatform macx-ios-clang -I /Users/martin/workspace/qt6_local_build/openssl_ios_armv8_64_build/openssl-1.1.1s/include -L /Users/martin/workspace/qt6_local_build/openssl_ios_armv8_64_build/openssl-1.1.1s -ccache -no-sql -sqlite -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -qt-doubleconversion -qt-libjpeg -qt -libpng -qt-zlib -no-warnings-are-errors -nomake examples -nomake tests -release -openssl-linked – -DQT_UIKIT_SDK=iphoneos -DQT_HOST_PATH=/Users/martin/workspace/qt6_local_build/qt_macos_x86_64_build/qtbase -DOPENSSL_USE_STATIC_LIBS=ON -DOPENSSL_ROOT_DIR=/Users/martin/workspace/qt6_local_build/openssl_ios_armv8_64_build/openssl-1.1.1s
which results in:
/Applications/CMake.app/Contents/bin/cmake' '-DQT_UIKIT_SDK=iphoneos' '-DQT_HOST_PATH=/Users/martin/workspace/qt6_local_build/qt_macos_x86_64_build/qtbase' '-DOPENSSL_USE_STATIC_LIBS=ON' '-DOPENSSL_ROOT_DIR=/Users/martin/workspace/qt6_local_build/openssl_ios_armv8_64_build/openssl-1.1.1s' '-DQT_USE_CCACHE=ON' '-DBUILD_SHARED_LIBS=OFF' '-DWARNINGS_ARE_ERRORS=OFF' '-DCMAKE_INSTALL_PREFIX=/Users/martin/workspace/qt6_local_build/qt_ios_armv8_64_install' '-DQT_QMAKE_TARGET_MKSPEC=macx-ios-clang' '-DCMAKE_CXX_COMPILER=clang++' '-DCMAKE_SYSTEM_NAME=iOS' '-DQT_BUILD_EXAMPLES=FALSE' '-DQT_BUILD_TESTS=FALSE' '-DCMAKE_BUILD_TYPE=Release' '-DQT_EXTRA_INCLUDEPATHS=/Users/martin/workspace/qt6_local_build/openssl_ios_armv8_64_build/openssl-1.1.1s/include' '-DQT_EXTRA_LIBDIRS=/Users/martin/workspace/qt6_local_build/openssl_ios_armv8_64_build/openssl-1.1.1s' '-DINPUT_sql_sqlite=no' '-DINPUT_sql_db2=no' '-DINPUT_sql_ibase=no' '-DINPUT_sql_mysql=no' '-DINPUT_sql_oci=no' '-DINPUT_sql_odbc=no' '-DINPUT_sql_psql=no' '-DINPUT_doubleconversion=qt' '-DINPUT_libjpeg=qt' '-DINPUT_libpng=qt' '-DINPUT_system_zlib=no' '-DINPUT_openssl=linked' '-G' 'Ninja' '/Users/martin/workspace/qt6_local_build/src/qt6'
I get the message:
– Looking for a OBJC compiler – Looking for a OBJC compiler - NOTFOUND – Looking for a OBJCXX compiler – Looking for a OBJCXX compiler - NOTFOUND
and later on when trying to build, there are multiple failures with:
error: Objective-C was disabled in PCH file but is currently enabled
There seems to be a problem when the CMake macro check_language is called. If I modify the macro qt_enable_cmake_languages in qtbase/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake so that OBJC and OBJCXX are appended to _qt_required_language_list instead of _qt_optional_language_list, the build succeeds.
Is this a bug or is there anything I should pass to configure to get this working without changing the code?