$ sudo apt install ctags cscope tmux
프로그래밍 소스코드의 태그 (전역변수 선언, 함수 정의, 매크로 선언)들의 Database(tags file)을 생성하는 Unix 명령어
ctags 를 사용하면 source code 내에서 함수나 변수가 선언된 곳으로 이동할 수 있음.
(vim, emacs 와 같은 에디터에서 특정 simbol을 찾을 때 사용)
소스코드 분석 용이 (Linux kernal 과 같은 큰 프로젝트의 소스코드를 분석할 때 유용!!)
<aside> 💡 /usr/bin: 사용자가 입력한 명령어를 찾는 directory 중 하나
</aside>
# search path for commands.
# It is a colon-seperated list of directories in which the shenn looks for commands.
$ echo $PATH
#!/bin/sh
rm -rf cscope.files
find . \\( -name '*.c' -o -name '*.cpp' -o -name "*.tbl" -o -name '*.cc' -o -name '*.h' -o -name '*.s' \\) -print > cscope.files
cscope -i cscope.files
<aside> 💡 ~/kernel/linux-5.8.0: linux kernel source code directory
kernel의 모든 module을 포함하는 root directory 에서 tags file 생성 후, root directory 에서 mycscope.sh 를 해야 모든 tag를 찾아갈 수 있음
</aside>
<aside> 💡 cscope.out: cscope 가 사용하는 DB 생성
</aside>