xcode-select --switchで複数バージョンのXcodeを切り替える

  • Xcode
  • macOS
  • CLI

この記事は、構成と文章の整理にAIを使っています。
あくまで読みやすくするための補助で、内容そのものをAIにすべて任せて書いているわけではありませんが、ところどころ相談しながら整えています。

何をするか

Macに複数バージョンのXcodeを入れていると、どのXcodeがビルドに使われるかを明示的に切り替えたい場面がある。xcode-selectコマンドで対象のDeveloper Directoryを指定すればいい。

ターミナル
sudo xcode-select --switch /Applications/Xcode-10.1.app

/Applications/配下に対象のXcode.appが実際に存在している必要がある。名前はXcode-10.1.appのように旧バージョンをリネームして共存させておくパターンが多い。

今どれが選ばれているか確認する

切り替える前後で、現在のDeveloper Directoryのパスは以下で確認できる。

ターミナル
xcode-select -p

なぜ切り替えが必要になるか

プロジェクトによって対応するXcodeのバージョンが違う場合、最新版だけ入れて上書きしているとビルドが通らなくなることがある。特に古いプロジェクトのメンテや、SDKのバージョン差でビルド結果が変わる検証をするときは、複数バージョンを共存させてxcode-selectで切り替える運用の方が安全。

sudoが必要なのは、この設定がシステム全体(グローバル)の設定だから。プロジェクト単位で切り替えたい場合はxcrun --sdkや環境変数DEVELOPER_DIRを使う方法もあるが、それはまた別の話。