macos-build について
ネイティブ macOS の Xcode プロジェクトをコマンドラインでビルドするためのガイドです。アプリをコンパイルまたは検証する開発者向けに、プロジェクトとschemeの確認、xcodebuildの実行、一般的な失敗の診断を説明します。
主な機能
- 01Xcodeプロジェクトとワークスペースの検索
- 02利用可能なschemeの一覧表示
- 03xcodebuildによるビルド
- 04ビルド出力の抽出と解釈
- 05一般的なビルド失敗の診断
活用シーン
- 01コード変更後のコンパイル確認
- 02指定したschemeでmacOSアプリをビルド
- 03依存関係、署名、SDKエラーの診断
- 04ベータSDK向けXcodeツールチェーンの選択
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ fayazara/ macos-app-skills --skill macos-buildインストール後、Claude Code で/macos-buildを入力して読み込まれたか確認します。
詳細
macOS アプリをビルドする
xcodebuild を使用して、任意のネイティブ macOS Xcode プロジェクトをコマンドラインからビルドします。
プロジェクトを探す
ビルドする前に、Xcode プロジェクトまたはワークスペースを探します。
find . -maxdepth 2 -name "*.xcodeproj" -o -name "*.xcworkspace" | head -5
次に、利用可能なスキームを一覧表示します。
xcodebuild -list -project "YourApp.xcodeproj" 2>/dev/null | grep -A 20 "Schemes:"
ビルドコマンド
プロジェクトのパスとスキームを置き換えて、このコマンドのテンプレートを使用します。
DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer xcodebuild build \
-project "YourApp.xcodeproj" \
-scheme "YourApp" \
-configuration Debug \
-destination "platform=macOS" \
2>&1 | grep -E "(BUILD SUCCEEDED|BUILD FAILED|error:)" | head -20
ワークスペース(SPM 依存関係または CocoaPods を含むプロジェクト)の場合:
DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer xcodebuild build \
-workspace "YourApp.xcworkspace" \
-scheme "YourApp" \
-configuration Debug \
-destination "platform=macOS" \
2>&1 | grep -E "(BUILD SUCCEEDED|BUILD FAILED|error:)" | head -20
結果の解釈
- BUILD SUCCEEDED -- ビルドが成功しました。ユーザーに成功を伝えます。
- BUILD FAILED と
error:の行が表示された場合 -- 各エラーを読み、ソースファイルと行番号を特定して、ユーザーによる修正をサポートします。修正後、ビルドを再実行して確認します。 - 出力が空、または不明瞭な場合は、grep フィルターを使わずに再実行し、診断用の出力全体を取得します。
ビルドするタイミング
- コードを変更した後、ユーザーからコンパイルの確認を求められた場合
- ユーザーが明示的に「build」、「compile」、または「check if it builds」と言った場合
- ビルドエラーを修正した後、修正が有効かどうかを確認する場合
Xcode ベータ版ツールチェーン
プロジェクトがベータ版 SDK(例:macOS 26 Tahoe)を対象としている場合、ベータ版 Xcode を指定する必要があることがあります。
DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer xcodebuild build ...
利用可能な Xcode を確認します。
ls /Applications/ | grep -i xcode
よくあるビルドエラー
| エラー | 修正方法 |
|---|---|
no such module 'Sparkle' | SPM の依存関係が解決されていません。まず xcodebuild -resolvePackageDependencies を試してください |
no signing identity found | コマンドラインビルドでは CODE_SIGN_IDENTITY="" と CODE_SIGNING_ALLOWED=NO を設定します |
SDK "macosx" cannot be located | DEVELOPER_DIR が正しくありません。Xcode のインストール先を確認してください |
scheme not found | xcodebuild -list を実行して、利用可能なスキームを確認します |
コメント
Markdown 対応