Repository navigation
☂️ Add support for ARM macOS as a target #60113
Copy link
Copy link
Closed
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work lista: buildBuilding flutter applications with the toolBuilding flutter applications with the toola: desktopRunning on desktopRunning on desktopc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilitycustomer: crowdAffects or could affect many people, though not necessarily a specific customer.Affects or could affect many people, though not necessarily a specific customer.engineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.platform-macosBuilding on or for macOS specificallyBuilding on or for macOS specificallyplatform-target-armTargeting an ARM-based platformTargeting an ARM-based platformtoolAffects the "flutter" command-line tool. See also t: labels.Affects the "flutter" command-line tool. See also t: labels.
Description
Filing as an umbrella bug for the overall feature of building ARM macOS applications. We can add specific sub-issues over time, but at a high level this will involve:
- The necessary Dart support
- Building/uploading engine artifacts in the correct format
- Updating the tool to understand the new target
- potentially adding new options to control what is being targeted
Issues
- Add Mac M1 ARM machines to the prod pool #87508
- Use ARM macOS frameworks,
gen_snapshot_x64andgen_snapshot_arm64in the tool #97681 - Run macOS integration tests on M1 Macs #97977
- Add integration tests to validate architectures of built macOS app #97978
- FlutterMacOS.framework engine isn't natively available for desktop for ARM macOS Apple Sillicon (including building for all valid architectures on x86) #69221
- Adds scripts for cross-arch macOS framework flutter-team-archive/engine#31014
- Adjust lipo thinning input/output for macOS #97111
- [doctor] Add macOS architecture to doctor output #65976
- macOS xcode project should move Framework linking to tool #56581
- CocoaPods compatibility with Apple DTK (Apple Silicon) CocoaPods/CocoaPods#9907
Tracking Apple Silicon as a host device separately at #60118.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work lista: buildBuilding flutter applications with the toolBuilding flutter applications with the toola: desktopRunning on desktopRunning on desktopc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilitycustomer: crowdAffects or could affect many people, though not necessarily a specific customer.Affects or could affect many people, though not necessarily a specific customer.engineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.platform-macosBuilding on or for macOS specificallyBuilding on or for macOS specificallyplatform-target-armTargeting an ARM-based platformTargeting an ARM-based platformtoolAffects the "flutter" command-line tool. See also t: labels.Affects the "flutter" command-line tool. See also t: labels.
Type
Projects
- StatusShow more project fieldsDone
Activity
alexmarkley commentedon Sep 19, 2020
stuartmorgan-g commentedon Sep 19, 2020
alexmarkley commentedon Sep 19, 2020
stuartmorgan-g commentedon Sep 19, 2020
alexmarkley commentedon Sep 19, 2020
@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),
.appbundles produced byflutter build macoson x86_64 hosts seem to work fine on Apple Silicon under Rosetta.Additionally, the tooling
flutter run -d macosruns 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:
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.
GyuriMajercsik commentedon Nov 24, 2020
arnemolland commentedon Nov 24, 2020
31 remaining items
[macOS] Enable universal binary builds by default
[macOS] Enable universal binary builds by default (#100271)
cbracken commentedon Mar 17, 2022
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:
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.
[macOS] Add run release test in devicelab (#100526)
[macOS] Ignore stderr contents in launch test
[macOS] Ignore stderr contents in launch test (#100591)
jmagman commentedon May 3, 2022
Closing as complete. The remaining testing work is being tracked in #87508.
github-actions commentedon May 17, 2022
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 -vand a minimal reproduction of the issue.