4

私がIPythonを使用していて (たとえば、新しい QT consoleで)、そこから作成した C++ ライブラリを呼び出しているとします (たとえば、SWIGまたはBoost.Pythonを使用して)。C++ コードにブレークポイントを設定し、IPython を使用して C++ ワークスペース (つまり、ブレークポイントに到達したときの変数) とやり取りできるようにしたいと考えています (たとえば、C++ 変数をプロットするなど)。

つまり、 IPythonから C++ コードをデバッグしたいと思います。これはまったく可能ですか?これに使用できるツールは何ですか?

4

2 に答える 2

3

(Linux を使用していると仮定して) 必要なのは gdb だけです。最初に、これを に追加して、ソース ファイルの場所を gdb に伝える構成をセットアップします$HOME/.gdbinit directory absolute-path-to-source

ここで開始gdb pythonし、gdb プロンプトで次のように実行します。 set args /usr/bin/ipython run

gdb ipythonipython はスクリプトなので、直接行うことはできません。ここからは gdb のドキュメントを参照してください。

于 2015-12-12T08:43:16.937 に答える
0

一般に、IPython を使用して C++ コードを直接デバッグすることはできません。ただし、C++ デバッガーを使用して C++ コードをデバッグすることはできます。

基本的に、コードを実行するために必要なプロセス (これは IPython 自体である可能性があります) を実行するように C++ デバッガーに指示し、C++ コードにブレークポイントを設定します (デバッガーは、適切な DLL が読み込まれるまで待機することを認識します)。 DLL に含まれています)。そこから、IPython プロセスで実行されているコードの一部をデバッグしています。

于 2012-07-22T05:53:33.793 に答える