ikeh1024のブログ

ZennやQiitaに書くにはちょっと小粒なネタをこちらに書いています

macOSのMACOSX_DEPLOYMENT_TARGETの下限について

概要

  • 現行のXcode15.2.0ではMACOSX_DEPLOYMENT_TARGET(いわゆる最低対応OS)が10.13以上でしか選択できない
  • これはXcode14から10.13以上となったみたい
  • Xcode14とXcode13の差異として、macOS 12 SDKが含まれるかどうかがある

https://forums.developer.apple.com/forums/thread/714572 Xcode はプラットフォームごとに 1 つの SDK のみを同梱します。 Xcode 14 には古い macOS 12 SDK がまだ残っていますが、ベータ版には macOS 13 SDK が含まれていました。これは、昨年や一昨年と同様、新しい macOS バージョンがまだベータ版であり、Apple がベータ SDK をパブリック リリースとして出荷していないためです。 macOS 12 SDK では 10.9 へのデプロイが可能ですが、ベータ版で Xcode 14.1 に含まれる 13 SDK では 10.13 以降へのデプロイのみが可能です。

https://developer.apple.com/support/xcode/

image

  • SDKの場所は.app内の以下
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs

image

image

Xcodeと公証

  • ニュースとアップデート
  • macOSとしては公証を通すためにXcode14以上である必要がある
    • 公証を通すためにXcode13でビルドして、ローカルでnotarytoolコマンドでやればいけなくはないか…?

image

image

まとめ

  • MACOSX_DEPLOYMENT_TARGETを10.9にするには、下記の手順でいけそうな雰囲気(やりたくはない)
    • Xcodesを使ってXcode 13.xをダウンロード
    • Xcode.app内の実行バイナリを直接実行して起動
    • SchemeをReleaseにしてビルド(署名だけされている状態)
    • notarytoolコマンドで公証