LINUX.ORG.RU

Что делаю не так, для того чтобы найти определение структуры ?


0

0

Захотел в исходниках ядра найти "structure definition"

1) cscope -R -b
2) запустил gvim
3) tag sk_buff --> вывело грамадный список где встречается sk_buff
4) cscope find g sk_buff --> грамадный список,
и все сместо того чтобу открыть файлик include/skbuff.h

как мне найти именно определение структуры, если можно примерчик :)


я делаю в духе этого:

cd include
grep -rn sk_buff * | grep struct | grep '{'

erDiZz
()
Ответ на: комментарий от theserg

Вообще интересная ситуация,
так если перед запуском gvim была выполненя команда
cscope -R -b

работает поиск референцов, например:
:cscope find c ip_defrag
выдаст список всех мест кода где вызывалась функция ip_defrag

но при поиске определеия структуры, например sk_buff
:cscope find d sk_buff
будет выдано громадное кол-во мест кода
аналогично если
:tag sk_buff


Далее, если удалить файл генерируемый cscope -R -b (cscope.out)
но оставить файл сгенированный командой ctag -R (tags)
запустить поиск декларации структуры, например
:tag sk_buff
все будет работать как надо

тоже относится и для поиска фунцкии, например
:tag ip_defrag

Вопрос следующий, можно ли использовать
одновременно функциональность cscope для поиска
рефенцов, а ctags для посика опредения структур?


В документации по cscope
http://www1.bell-labs.com/project/wwexptools/cscope/

нашел что имеется следующая возможность
The CSCOPE database provides more information than is accessible from the simple questions used by the normal menu. To emulate the CCALLS tool, an extended menu is available with the following input fields:
Find this structure definition:

на запустить так называемое расширенное меню не удалось!





andyS1976
() автор топика
Ответ на: комментарий от andyS1976

нашел решение!

не вникая в подробности попробовал установить опцию
поиска сначала в cstags а затем в cscoзe

:set csto=1

andyS1976
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.