13

Linux で c および c++ プロジェクトの cscope データベースから完全および部分呼び出しツリーを生成したいと考えています。

プロジェクトはかなり大きいので、プロジェクトの完全な呼び出しツリーを操作するのは簡単ではない可能性があるため、関数名の grep のようなフィルターで呼び出しツリーの生成を制限したいと考えています。

また、「呼ばれる」および「呼び出される」サブツリーを任意のポイントから構築できるようにしたいと考えています。

そのため、ツールはインタラクティブで、パッチを簡単に適用できる必要があります。

PS: cscope データベースを使用したいのは、プロジェクトで既に使用されており、その生成がかなり高速であるためです。私はvimエディターを使用しており、Xウィンドウシステムを持っています。

sourceforge には cbrowser プログラムがありますが、call-tree (callgraph) 機能が壊れています。

4

5 に答える 5

4

vim を使用して実行する場合は、次の方法があります。

http://www.vim.org/scripts/script.php?script_id=2368

于 2010-07-30T16:57:16.550 に答える
2

cbrowser でコール ツリーの問題を「修正」しようとしました ( http://retprogbug.wordpress.com/2010/09/18/an-attempt-to-resuscitate-cbrowser-0-8/を参照) 。完全なプログラミング初心者であるため、保証はしません。

于 2010-09-19T14:58:00.753 に答える
1

kscope別のオプションかもしれません。指定されたすべてのことを実行できるかどうかはわかりませんが、GUI アプリとしてはかなり用途が広いです。

実行に問題がある Ubuntu ユーザーは、次の手順に従うことをお勧めします。

于 2011-01-15T00:00:50.717 に答える
1

私は、cscope データベースを読み取る cscope 以外のプログラムを知りません。vim の cstag 機能でさえ、照会するバックグラウンド cscope プロセスを開始するだけです。

コールグラフの生成に関しては、cscope の外に出ても構わないのであれば、むしろ doxygen が作成するものが好きです。それらは少し大きくなる可能性がありますが、ほぼすべてのポイントからグラフを生成し、ソースを直接参照するのは非常に簡単です.

于 2010-02-13T09:25:49.370 に答える