Macでgdbにプロセスの制御権を与える
前回の記事で出ていたエラーメッセージについて、解決したので。
darwinでgdbを使って デバッグする = プロセスを制御する ためには権限が必要なんだそうです。
Building GDB for Darwin - GDB Wiki
なので、gdbを実行するときに
$ sudo gdb hogehoge
とすればデバッグはできるのですが、わざわざ管理者権限でデバッグするのは嫌><!ということで、証明書をつくってプロセスの制御を許可する、というのがスマートな方法らしいです(ということがまんま上記のページに書いてあります:p)
せっかくなので証明書のつくりかたと登録の方法をSS入りで。
証明書の作成
キーチェーンアクセスでつくります。
キーチェーンアクセス > 証明書アシスタント > 証明書を作成...
- 名前: gdb-cert (わかればなんでもいい)
- 固有名のタイプ: 自己署名ルート
- 証明書のタイプ: コード署名
- デフォルトを無効化: チェックを入れる
として「次へ」。
「証明書の場所を指定」の画面になるまで「次へ」でOK。
「証明書の場所を指定」の画面になったら
- キーチェーン: システム
証明書の設定
キーチェーンから先ほどの gdb-certの証明書 を探し出して、プロパティから「情報を見る」を選択。
「信頼」の項目について、
- コード署名: 常に信頼
としてウィンドウを閉じる。
これで証明書の準備はOK。