XCode 5.0 で Eclipse C/C++ プロジェクトを使用してアプリケーション デバッグを作成する際にひどい問題が発生しましたが、ついに作成しました。ようやくアプリケーションのデバッグに成功したので、他の人たちの時間を節約するためにこの小さなチュートリアルを作成することにしました。
Mavericks OS の Eclipse で C/C++ で記述されたアプリケーションをデバッグしようとすると、「エラー gdb -- バージョン」が表示されます。
これは、Apple が LLDB の代わりに GDB のサポートを中止したため、Eclipse が新しい Mac OSX で GDB デバッグを見つけることができないためです。これがあなたのケースであるかどうかを確認するには、ターミナルから実行してみてくださいgdb
。ファイルが見つからないというメッセージが表示されます。
問題は、LLDB がまだ Eclipse 用に構成されていない (またはその逆) ことです。では、以前の 10.8 OS のように、Eclipse でアプリケーションを再度デバッグするにはどうすればよいでしょうか?
まず、GDB を取得してコンパイルします。次の 2 つのオプションがあります。
- Macports (残念ながら、Mavericks のリリースは getext ライブラリのビルドでスタックしていました)
- 自作
私の提案は、Homebrew から入手することです。Web サイトでダウンロード リンクを確認し、次を使用してインストールします。
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/hebrew/go)"
インストールしましょう。GDB が正常にインストールされたら、証明書に署名して Eclipse で GDB を使用できるようにする必要があります。そうしないと、次のエラーが表示されます。
プロセス ID 28885 の Mach タスク ポートが見つかりません: (os/kern) 障害 (0x5)。(gdb がコード署名されていることを確認してください - taskgated(8) を参照してください)
これは、Eclipse が GDB を見つけることができるが、Apple 証明書の問題のために実行できないことを意味します。
GDB アプリケーションに署名し、Eclipse で実行できるようにするには、次のガイドに従ってください。
https://sourceware.org/gdb/wiki/BuildingOnDarwin
これは次のように要約できます。
- Keychain Access アプリケーションを起動します (/Applications/Utilities/Keychain Access.app)
メニューを開く /Keychain Access/Certificate Assistant/Create a Certificate (TOP MENU BAR)
名前を選択します (例では gdb-cert) 3.1 「ID タイプ」を「自己署名ルート」に設定します 3.2 「証明書タイプ」を「コード署名」に設定します 3.3 「デフォルトを上書きする」フラグをチェックします 3.4 「」を数回クリックします3.5 「システム」キーチェーンに証明書を保存できない場合は、「ログイン」キーチェーンに証明書を作成してからエクスポートします。それ。その後、「システム」キーチェーンにインポートできます。3.6 「システム」に「gdb-cert」があることを確認します (左上のウィンドウ)
作成したばかりの証明書 (gdb-cert) を 2 回押して [情報を見る] を選択し、
- 「信頼する」項目を開き、「コード署名を常に信頼する」に設定します
- キーチェーン アクセス アプリケーションを閉じる
- アクティビティモニターから「タスクゲート」アプリケーションを再起動します
次に、端末から実行して証明書に署名する必要があります
$ codesign -s gdb-cert ../path of GDB
例:
$ codesign -s gdb-cert /usr/local/bin/gdb
これですべての設定が完了しました.... MacOSX Mavericks 上の Eclipse で C/C++ アプリケーションをデバッグする準備ができました
Eclipse メニューの Run->Debug Configuration->Debugger 行をもう一度再確認して、すべてが正しく設定されていることを確認してください: GDB Debugger -> /usr/local/bin/gdb (またはローカル パス、"$ which gdb " 正しいパスを取得するには) GDB コマンド ファイル -> .gdbinit
Apple は、Mavericks に GDB をインストールすることを許可しましたが、単純な Hallo World プログラムを実行する前に、人々が壁に頭をぶつけるのが好きです。コメント無し。
楽しんでください。時間を節約できたことを願っています。