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

Qt for macOS on Apple Silicon (arm64)

    XMLWordPrintable

Details

    Description

      Tracking task for work required to make Qt work on Apple Silicon (arm64)

      Please file any issues as standalone bugs and link them to this issue.

      The work can be roughly grouped into three areas, by increasing priority:

      1. Making sure x86_64 builds of Qt work when running via Rosetta (QTBUG-86405)
      2. Making sure single architecture arm64 builds work and run fine
      3. Enabling universal builds of Qt, building and packaging x86_64 and arm64 together (QTBUG-85447)

      The last step is the one requiring the most work, as neither our qmake or CMake build systems are prepared for multi architecture builds. In the interim the user can build Qt twice, their app twice, and then lipo the application binaries into a universal app.

      Note: The work for making Qt run well on macOS 11 (Big Sur) is tracked in QTBUG-85546

      Building for Apple Silicon

      Building on the DTK should work like a normal Qt for macOS build.

      Cross compiling

      With qmake
      export DEVELOPER_DIR=/path/to/your/Xcode12-universal.app/Contents/Developer
      ./configure $CONFIGURE_OPTIONS -device-option QMAKE_APPLE_DEVICE_ARCHS=arm64
      
      With CMake (Qt 6.0 only)

      Build Qt for macOS natively first, so that you have the host tools buildt in for example /build/qt/6.0/qtbase. Then in /build/qt/6.0-arm/qtbase

      export DEVELOPER_DIR=/path/to/your/Xcode12-universal.app/Contents/Developer
      cmake ~/dev/qt/6.0/qtbase -DQT_HOST_PATH=~/build/qt/6.0/qtbase -DCMAKE_SYSTEM_NAME=Darwin -DCMAKE_OSX_ARCHITECTURES=arm64
      

      Attachments

        Issue Links

          Activity

            People

              vestbo Tor Arne Vestbø
              vestbo Tor Arne Vestbø
              Veli-Pekka Heinonen Veli-Pekka Heinonen
              Tor Arne Vestbø Tor Arne Vestbø
              Votes:
              87 Vote for this issue
              Watchers:
              154 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: