Xcode Couldn’t communicate with a helper application.

エラーの原因

XcodeでAppleアカウントにサインインしようとしたら以下のエラーが出ました。

f:id:bamboohero:20210430072342p:plain

エラーの原因と対処法は色々とあるようですが、私の場合はXVim2を導入するためにオレオレ証明書でXcodeに署名し直していることが原因のようでした。ここでエラーについての議論がされています。

github.com

対応方法

私の場合はこちらでコメントされている対応方法が有効でした。

github.com

まず、以下のサイトからXcodeをダウンロードします(現在12.5を使っているので、同じ12.5をダウンロードします)。

f:id:bamboohero:20210430071115p:plain
https://developer.apple.com/download/more/

Xcode_12.5.xipというファイルをダウンロードしたら解凍し、Xcode_12.5.appという名前に変更してApplicationsディレクトリに移動します。

以下のコマンドで使用するXcodeを切り替えます。

$ sudo xcode-select -s /Applications/Xcode_12.5.app

これでApple IDによるサインインができるようになります。

サインインが必要な設定等(署名設定など)が終わったら、XVimが有効なXcodeに戻します。

$ sudo xcode-select -s /Applications/Xcode.app

ちょっとめんどくさいですが、サインインが必要な設定はそれほど頻繁に行う作業でもないので、根本対応がされるまではこの運用で行こうと思います。

別の対応方法

SIMBL plugin sysmtemというものを使う方法もあるようです。こちらは試していないですが、macOSのセキュリティ機能を一部無効化するとか書いてあるのでちょっと怖い気も。。

https://github.com/XVimProject/XVim2#simbl-plugin-system