Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-121322

Cannot cross compile Qt for arm64 macOS on x86_64 macOS

    XMLWordPrintable

Details

    • macOS
    • fc2fa92de (dev), e43f4a714 (6.8)

    Description

      Building Qt on x86_64 macOS for arm64 macOS fails at configuration step because of "bad CPU type"error.

      Log:

      chen@Luqiaos-MacBook-Pro Downloads % mkdir qtbuild
      chen@Luqiaos-MacBook-Pro Downloads % cd qtbuild
      chen@Luqiaos-MacBook-Pro qtbuild % /Users/chen/Qt/6.5.4/Src/configure -qt-host-path "/Users/chen/Qt/6.5.4/macos" -- -DCMAKE_OSX_ARCHITECTURES="arm64"
      + mkdir -p qtbase
      + cd qtbase
      + exec /Users/chen/Qt/6.5.4/Src/qtbase/configure -top-level -qt-host-path /Users/chen/Qt/6.5.4/macos -- -DCMAKE_OSX_ARCHITECTURES=arm64
      '/Users/chen/Qt/Tools/CMake/CMake.app/Contents/bin/cmake' '-DQT_HOST_PATH=/Users/chen/Qt/6.5.4/macos' '-DCMAKE_OSX_ARCHITECTURES=arm64' '-G' 'Ninja' '/Users/chen/Qt/6.5.4/Src'
      -- The CXX compiler identification is AppleClang 15.0.0.15000040
      -- The C compiler identification is AppleClang 15.0.0.15000040
      -- The ASM compiler identification is AppleClang
      -- Found assembler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
      -- Detecting CXX compiler ABI info
      -- Detecting CXX compiler ABI info - done
      -- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
      -- Detecting CXX compile features
      -- Detecting CXX compile features - done
      -- Detecting C compiler ABI info
      -- Detecting C compiler ABI info - done
      -- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
      -- Detecting C compile features
      -- Detecting C compile features - done
      -- Checking dependencies of submodule 'qtbase'
      -- Checking dependencies of submodule 'qtimageformats'
      -- Checking dependencies of submodule 'qtlanguageserver'
      -- Checking dependencies of submodule 'qtshadertools'
      -- Checking dependencies of submodule 'qtsvg'
      -- Checking dependencies of submodule 'qtdeclarative'
      -- Checking dependencies of submodule 'qtquicktimeline'
      -- Checking dependencies of submodule 'qtquick3d'
      -- Checking dependencies of submodule 'qtmultimedia'
      -- Checking dependencies of submodule 'qt3d'
      -- Checking dependencies of submodule 'qt5compat'
      -- Checking dependencies of submodule 'qtactiveqt'
      -- Checking dependencies of submodule 'qttools'
      -- Checking dependencies of submodule 'qtwayland'
      -- Checking dependencies of submodule 'qtapplicationmanager'
      -- Checking dependencies of submodule 'qtcharts'
      -- Checking dependencies of submodule 'qtcoap'
      -- Checking dependencies of submodule 'qtconnectivity'
      -- Checking dependencies of submodule 'qtdatavis3d'
      -- Checking dependencies of submodule 'qtwebsockets'
      -- Checking dependencies of submodule 'qthttpserver'
      -- Checking dependencies of submodule 'qtserialport'
      -- Checking dependencies of submodule 'qtpositioning'
      -- Checking dependencies of submodule 'qtwebchannel'
      -- Checking dependencies of submodule 'qtwebengine'
      -- Checking dependencies of submodule 'qtdoc'
      -- Checking dependencies of submodule 'qtgrpc'
      -- Checking dependencies of submodule 'qtinsighttracker'
      -- Checking dependencies of submodule 'qtremoteobjects'
      -- Checking dependencies of submodule 'qtinterfaceframework'
      -- Checking dependencies of submodule 'qtlocation'
      -- Checking dependencies of submodule 'qtlottie'
      -- Checking dependencies of submodule 'qtmqtt'
      -- Checking dependencies of submodule 'qtnetworkauth'
      -- Checking dependencies of submodule 'qtopcua'
      -- Checking dependencies of submodule 'qtqmlscriptcompiler'
      -- Checking dependencies of submodule 'qtquick3dphysics'
      -- Checking dependencies of submodule 'qtquickeffectmaker'
      -- Checking dependencies of submodule 'qtscxml'
      -- Checking dependencies of submodule 'qtsensors'
      -- Checking dependencies of submodule 'qtserialbus'
      -- Checking dependencies of submodule 'qtspeech'
      -- Checking dependencies of submodule 'qttranslations'
      -- Checking dependencies of submodule 'qtvirtualkeyboard'
      -- Checking dependencies of submodule 'qtvncserver'
      -- Checking dependencies of submodule 'qtwebview'
      -- Configuring submodule 'qtbase'
                  -DCMAKE_C_FLAGS_DEBUG=-g
                  -DCMAKE_C_FLAGS_RELEASE=-O3 -DNDEBUG
                  -DCMAKE_C_FLAGS_RELWITHDEBINFO=-O2 -g -DNDEBUG
                  -DCMAKE_CXX_FLAGS_DEBUG=-g
                  -DCMAKE_CXX_FLAGS_RELEASE=-O3 -DNDEBUG
                  -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=-O2 -g -DNDEBUG
                  -DCMAKE_C_STANDARD=11
                  -DCMAKE_C_STANDARD_REQUIRED=ON
                  -DCMAKE_CXX_STANDARD=17
                  -DCMAKE_CXX_STANDARD_REQUIRED=ON
                  -DCMAKE_MODULE_PATH:STRING=/Users/chen/Qt/6.5.4/Src/qtbase/cmake/platforms
                  -DCMAKE_OSX_ARCHITECTURES:STRING=arm64
                  -DCMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH:BOOL=OFF
      CMake Error at qtbase/cmake/QtSyncQtHelpers.cmake:261 (message):
        syncqt.cpp failed for module QtCore:
      
        The syncqt process exited with code Bad CPU type in executable and without
        any useful output.  This can happen if syncqt crashes due to the
        incompatibilities with the standard C++ library located by either PATH or
        LD_LIBRARY_PATH environment variables.  Please make sure that PATH or
        LD_LIBRARY_PATH don't point to the standard libraries different from the
        one you use for building Qt.
      Call Stack (most recent call first):
        qtbase/cmake/QtModuleHelpers.cmake:874 (qt_internal_target_sync_headers)
        qtbase/cmake/QtScopeFinalizerHelpers.cmake:24:EVAL:1 (qt_finalize_module)
        qtbase/src/corelib/CMakeLists.txt:DEFERRED
      
      
      -- Configuring incomplete, errors occurred!
      CMake Error at /Users/chen/Qt/6.5.4/Src/qtbase/cmake/QtProcessConfigureArgs.cmake:994 (message):
        CMake exited with code 1.
      

      So it's a new build folder. No other flags than the necessary host path and CMake variable. Both source and host are from online installer.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            alexandru.croitor Alexandru Croitor
            luqiaochen Luqiao Chen
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes