1

omn​​icppcomplete、taglist、cscope などをインストールし、以下を/usr/include使用してタグを生成しました。

ctags -R --c++-kinds=+plx --fields=+iaS --extra=+q .

そして私の.vimrc私は設定しました:

set tags=/usr/include/tags,./tags,./..tags,./**/tags

しかし、マルチスレッド プログラムを作成するときに、+を押してpthread_createandに切り替えることができません。「タグが見つかりません」と表示されます。pthread_mutex_initCtrl]

だから私は助けを求めてここに書いています。ありがとう。

4

3 に答える 3

1

タグファイルを調べてpthread_mutex_initpthread_create実際にタグに含まれているかどうかを判断する必要があります。そうでない場合は、(1)ソースがスキャンされていないか、(2)期待した形式で実際に存在していない可能性があります。pthread_createとは両方ともpthread_mutex_initに含まれてlibcいます。これは非常に複雑なコードセットであり、多くの場合、シンボルがプリプロセッサマクロの複数のレイヤーを介して間接的に定義されていることがわかります。この場合、ctagsは機能しません。

于 2010-08-25T03:27:51.680 に答える
1

おそらくあなたの問題を解決するこのSO投稿を見てください:

ctags は、libc6、libstdc++、および boost のリストを無視します

于 2011-05-05T08:57:50.643 に答える
0

ctagsは生成するためにいくつかのマイクロを必要とするため、次のようにテストしてください

sudo ctags -I THROW -I __THROWNL -I __attribute_pure -I nonnull -I __attribute -R --c-kinds = + p --fields = + iaS --extra = + q --language-force = C / usr / include //

于 2013-03-20T09:02:20.027 に答える