2016年11月12日土曜日

Command Line Tools for Xcodeのもう一つの顔

以前、Command Line Tools for Xcodeのアンインストール方法という記事を書いた。
が、実は、この記事には見落としがあった。ただし、本稿は、その見落とし部分についてアンインストール方法を述べるものではない。

Command Line Tools for Xcodeのディスクイメージ、あるいはxcode-select --installコマンドによってインストールされるパッケージは2種類あったのだ。

ひとつはcom.apple.pkg.CLTools_Executablesで、これのアンインストールは、件の記事にある通り簡単だ。
もうひとつはcom.apple.pkg.DevSDK_OSX1012(macOS 10.12向けの場合)で、その名の通りSoftware Development Kitだ。こちらがインストールするものは多岐にわたるので、アンインストールは一筋縄ではいかない。

確認したところ、OS X Yosemite用のCommand Line Tools for Xcodeディスクイメージでも、SDKを含んでいた。それ以前のディスクイメージも入手可能だが、確認していない。

ここからは、アンインストールしたい人ではなく、使いたい人のための内容になる。

OS X El Capitanから、OSには/usr/includeディレクトリが含まれなくなった。もちろん、そこに入っているべきヘッダファイルも含まれなくなった。これらはSDKの形で、Command Line Tools for Xcodeに含まれるようになった。

つまり、UNIX資産のコンパイルを含めたソフトウェア開発または、それに準じたことをしたい人は、OS X El Capitan移行は、Xcodeだけでは不十分になったのだ。

このことは、ffmpegコンパイルガイドを改訂していて判明、検証した。

最後に、SDKを含めたアンインストールだが、インストーラパッケージがインストールする内容を知る方法というのはある。だから、応用すればアンインストールはできるはずである。
だが、リンクにある手順で生成したシェルスクリプトを管理者権限で実行しても、削除できるのは/usr/share/man以下にあるマニュアルだけであった。おそらくはSIP (System Integrity Protecton)のせいである。SIPを解除すれば消せるかも知れないが、筆者はSDKが必要なのでやる気はない。

参考までにSDKがファイルをインストールする場所(最上位のみ)を書いておく。並の神経では触る気にならない場所だと思うが、いかがだろうか?

/System/Library/Frameworks
/usr/include
/usr/lib
/usr/share/man

以上。

0 件のコメント :

コメントを投稿