Skip to content

☂️ Add support for ARM macOS as a target #60113

Closed

Activity

  1. added
    c: new featureNothing broken; request for a new capability
    toolAffects the "flutter" command-line tool. See also t: labels.
    engineflutter/engine related. See also e: labels.
    platform-macosBuilding on or for macOS specifically
    a: buildBuilding flutter applications with the tool
    on Jun 23, 2020
  2. added
    P3Issues that are less important to the Flutter project
    on Aug 18, 2020
  3. alexmarkley commented on Sep 19, 2020

    @alexmarkley
  4. stuartmorgan-g commented on Sep 19, 2020

    @stuartmorgan-g
    Author
  5. alexmarkley commented on Sep 19, 2020

    @alexmarkley
  6. stuartmorgan-g commented on Sep 19, 2020

    @stuartmorgan-g
    Author
  7. alexmarkley commented on Sep 19, 2020

    @alexmarkley

    Then hopefully we should also be agreed that the place to discuss the new thing you are requesting is in the issue you filled for it, rather than this completely unrelated issue.

    @stuartmorgan I'm sorry if my misunderstanding was frustrating. Being new to the project, a plain reading of this issue left me unsure what the point of this issue was.

    That said, I'm happy to help with testing of the macOS Desktop support on Apple Silicon. Currently (flutter master from an hour ago), .app bundles produced by flutter build macos on x86_64 hosts seem to work fine on Apple Silicon under Rosetta.

    Additionally, the tooling flutter run -d macos runs fine on Apple Silicon, but obviously under Rosetta.

    As I'm sure you expected (or if you've tested this yourself, you already know) the problems start when I launch the project in Xcode and ask it to build for 'My Mac', in which case I get the following:

    error: The linked and embedded framework 'App.framework' is missing one or more architectures required by this target: arm64. (in target 'Runner' from project 'Runner')
    error: The linked and embedded framework 'FlutterMacOS.framework' is missing one or more architectures required by this target: arm64. (in target 'Runner' from project 'Runner')
    

    My intention here is to be as helpful as possible, while trying to improve and future-proof my own app project(s). I'm new to the Dart and Flutter projects, but I'm interested in learning and contributing as quickly as possible.

    Please let me know if there is any way I can assist.

  8. GyuriMajercsik commented on Nov 24, 2020

    @GyuriMajercsik
  9. arnemolland commented on Nov 24, 2020

    @arnemolland
  10. 31 remaining items

  11. cbracken commented on Mar 17, 2022

    @cbracken
    Member

    As of #100271, we should be building macOS universal binary apps by default on master branch.

    Note that, like all macOS apps, the default is that debug builds build as single-architecture binaries using the architecture of the machine you're working on. Profile/Release builds build as universal binaries. While it is not the default for macOS apps (Flutter or otherwise), if you want to generate universal binaries for debug builds, you can take the following steps:

    1. Select the Runner project in Xcode.
    2. Select the Runner target in the settings sidebar.
    3. Select the Build Settings tab and select All for the options to show.
    4. Expand the Build Active Architecture Only option and for Debug, change Yes to No.

    image

    Please shout if you run into any issues with this. We'd love to get feedback on any issues you encounter -- please file a new issue and link it here.

  12. jmagman commented on May 3, 2022

    @jmagman
    Member

    Closing as complete. The remaining testing work is being tracked in #87508.

  13. github-actions commented on May 17, 2022

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  14. locked as resolved and limited conversation to collaborators on May 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work lista: buildBuilding flutter applications with the toola: desktopRunning on desktopc: new featureNothing broken; request for a new capabilitycustomer: crowdAffects or could affect many people, though not necessarily a specific customer.engineflutter/engine related. See also e: labels.platform-macosBuilding on or for macOS specificallyplatform-target-armTargeting an ARM-based platformtoolAffects the "flutter" command-line tool. See also t: labels.

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions