본문 바로가기
IT Tips

코드소나(CodeSonar) 소스 분석 방법

by 누워서 코딩 2022. 7. 13.

Step 1. project configuration file (.config) 생성

 

1.1 분석 프로젝트 및 artifacts 를 저장할 저장소 만들기

cd [CodeSonar path]
mkdir [repository name]
cd [repository name]

- project configuration file (.config) 만들기

 

codenonar create-conf [project name]
-> [project name]: own project file name

ex) ~/CodeSonar/project$

 

1.2 매개변수를 COMPILE_MODELS과 WARNING_FILTER 로 설정하도록 [project name].config 파일 구성

 

vim [project name].conf

 

1.3 [project name].conf 파일을 열어 COMPILE_MODELS를 추가한다.

- COMPILE_MODELS를 설정해야, 다른 유형의 플랫폼 또는 레이어에서 CodeSonar가 크로스 컴파일러(cross compiler)의 유형을 인식할 수 있기 때문이다.

cross compiler 유형의 예들

COMPILER_MODELS += hexagon-c++ -> gpp
COMPILER_MODELS += hexagon-cpp -> cpp
COMPILER_MODELS += hexagon-g++ -> gpp
COMPILER_MODELS += qdsp6-c++ -> gpp
COMPILER_MODELS += qdsp6-cpp -> cpp
COMPILER_MODELS += qdsp6-g++ -> gpp

 

Step 2. 코드소나 툴을 이용한 소스 분석 방법 

2.1 전체 compile된 소스를 준비

cd [source code path] /
./compile.sh model_name compile_option

 

2.2 분석 하고자 하는 오브젝트(.o)를 제거

rm [file name].o

 

2.3 코드소나 분석 명령어와 함께 빌드 진행

odesonar analyze [CodeSonar-repository-path/project-name] [-clean] [- foreground] [-project /team-name/project-name] [host:port] [build_command]

[CodeSonar-repository-path/project-name] : project path used to store analysis files [-clean] : delete from project-name.prj_files before analysis to make this build to a basic analysis [-foreground] : run in the foreground [-project /team-name/project-name] : team name & project name path on CodeSonar web page

 

※ 코드소나 명령어의 자세한 내용은 관련 codesonar에서 제공하는 전용 문서를 참조해야 함

댓글