SKILL.md
$2a
Workflow: Configuring macOS Tooling
Copy and follow this checklist to configure the macOS build environment.
- Install Xcode: Install the latest version of Xcode from the Mac App Store or the Apple Developer portal.
- Configure Command-Line Tools: Link the Xcode command-line tools to the installed Xcode version. Run the following command in the terminal:
sudo sh -c 'xcode-select -s /Applications/Xcode.app/Contents/Developer && xcodebuild -runFirstLaunch'
Conditional: If Xcode is installed in a custom directory, replace /Applications/Xcode.app with the correct absolute path.
- Accept Xcode Licenses: Accept the required developer licenses by running:
sudo xcodebuild -license
Read and agree to the prompts.
- Install CocoaPods: Install CocoaPods to handle native macOS plugin dependencies.
sudo gem install cocoapods
Conditional: If CocoaPods is already installed, ensure it is updated to the latest version (sudo gem update cocoapods).
Workflow: Validating the Environment
Execute this feedback loop to ensure the environment is correctly configured for macOS desktop development.
- Run Validator: Execute the Flutter diagnostic tool with verbose output:
flutter doctor -v
- Review Errors: Check the
Xcodesection in the output.
- Fix & Retry: If errors or missing components are reported under the Xcode section, resolve them according to the output instructions, then re-run
flutter doctor -vuntil the Xcode section passes.
- Verify Device Availability: Confirm that Flutter recognizes the macOS desktop as a valid deployment target:
flutter devices
Success Criteria: The output must contain at least one entry with macos listed as the platform.
Troubleshooting
If the validation workflow fails, apply the following resolutions:
- Missing Command-Line Tools: If
flutter doctorreports missing tools, ensure thexcode-selectcommand was run withsudoand points to the correct.appdirectory.
- CocoaPods Not Found: If CocoaPods is installed but not detected, verify that your Ruby
gembinary path is included in your shell'sPATHenvironment variable.
- Device Not Listed: If
flutter devicesdoes not listmacos, ensure desktop support is enabled in your Flutter configuration:
flutter config --enable-macos-desktop