ecsimsw

install ctags / cscope 본문

install ctags / cscope

JinHwan Kim 2019. 4. 2. 03:32

ctags / cscope

- 리눅스에서 길고 복잡한 코드를 다룰때 유용한 유틸리티 두가지.
  • ctags
    - 소스 코드의 태그(변수, 함수, 매크로 등의 선언 부분)들의 데이터 베이스 파일을 생성해 인덱스를 만들어 주어, 코드 분석 시 탐색할 수 있도록 하는 유틸리티이다.
    sudo apt-get install ctags
    - tags 파일을 생성하여 소스 코드의 태그를 데이터 베이스로 관리할 수 있다.
    ctags "Filename" ctags -R
    - 위 두 명령어처럼 ctags 다음에 파일 이름을 명시하는 것으로 해당 파일만 tags 파일을 만들거나, 아래 ctags -R처럼 현재 디렉토리의 모든 파일/ 하위 디렉토리의 모든 파일을 대상으로 tags 파일을 만들 수 있다.
    - vi 에디터에 tags 파일 경로를 등록하여 vi 에디터와 ctags를 연동할 수 있다.
    ~/.vimrc를 열어 다음을 추가한다.
    set tags="tags root"
    - "tags root"에 vi에디터에 등록할 tag 파일의 위치를 넣는다.
  • cscope
    - cscope는 다음처럼 설치하고 설정한다.
    apt-get install cscope
    - /usr/bin/ 아래에 mkcscope.sh 파일을 만들고 다음을 붙여넣고 저장한다.
    #!/bin/sh rm -rf cscope.files cscope.files find . \( -name '*.c' -o -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.s' -o -name '*.S' \) -print > cscope.files cscope -i cscope.files
    - 파일 퍼미션을 설정한다.
    chmod 755 mkcscope.sh
    - 쉘에서 mkcscope.sh를 실행하여 cscope.out 파일을 생성한다. 약간의 시간 이후 Cscope version이 출력되면 ctrl+d를 눌러 빠져 나올 수 있다.
    ls -al | grep cscope
    - cscope로 된 파일명 리스트를 출력시 cscope.files 와 cscope.out 두개를 확인 할 수 있을 것이다.
    - vi와 연동을 위해 vi ./vimrc로 파일을 열어 아래 코드를 붙여넣고 저장한다.
    set csprg=/usr/bin/cscope set csto=0 set cst set nocsverb if filereadable("./cscope.out") cs add cscope.out else cs add /usr/src/linux/cscope.out endif set csverb

'Computer Science > Linux, Git' 카테고리의 다른 글

Slack으로 Github 알림 받기  (8) 2021.07.04
using ctags / cscope  (0) 2019.04.03
Shell / Shell script / Terminal, Console  (0) 2019.03.12
Pipe / Redirection  (0) 2019.03.12
ens33 setting  (0) 2019.03.11
Comments