Homebrewから($ brew install gdb
を介して)gdbをインストールした後、私は これらの指示 に従って、gdbにプロセスに接続するためのアクセス許可を与えました。
コマンドを実行するステップに到達したとき:
$ codesign --entitlements gdb-entitlement.xml -fs gdb-cert $(which gdb)
終了コード1で、次のエラーが発生します。
/usr/local/bin/gdb: errSecInternalComponent
何が問題なのか理解できないため、動作するバージョンのgdbのインストールを続行できません。何か助けはありますか?
追加情報:
Mac OSXバージョン10.14.4
GDBバージョン8.3(homebrew経由)
ユーザーを_developer
グループに追加しました。助けなかった
マシンを再起動しようとしましたが、Sudo killall taskgated
が役に立ちませんでした
以前のバージョンのGDB(8.0.1)をインストールしようとしたが、同じ結果が得られた
最初に これらの手順 に従って証明書を作成してから gdb署名手順 を完了する前に実行すると、それを機能させることができました。唯一の例外は、証明書をログインに戻すのではなく、システムキーチェーンに保持する必要があったことです。
統合された一連の手順は次のとおりです。
Sudo security add-trust -d -r trustRoot -p basic -p codeSign -k /Library/Keychains/System.keychain ~/Desktop/gdb-cert.cer
_rm -f ~/Desktop/gdb-cert.cer
_security find-certificate -c gdb-cert
_->証明書が見つかった場合は、証明書に関する詳細を表示する必要がありますsecurity find-certificate -p -c gdb-cert | openssl x509 -checkend 0
_->証明書の有効期限が切れないと言う必要がありますsecurity dump-trust-settings -d
_->この証明書でコード署名の信頼設定が有効になっていることを示す必要があります(他の証明書/権限が表示される場合があります)以下のテキストをコピーして、現在のディレクトリの「entitlements.xml」ファイルに保存します。
_<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.Apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.Apple.security.cs.debugger</key>
<true/>
</dict>
</plist>
_
ターミナルで次のコマンドを実行します。
codesign --entitlements entitlements.xml -fs gdb-cert $(which gdb)
->資格付きのコードサインcodesign -vv $(which gdb)
->コード署名を確認するcodesign -d --entitlements - $(which gdb)
->コード署名の詳細を表示するマシンを再起動します