Cppcheck는 C/C++ 코드용 정적 분석 도구입니다.
며칠 전, Cppcheck 2.11의 새로운 버전 출시가 발표되었습니다. 이번 버전에서는 사용자 인터페이스 개선, 새로운 옵션 및 매개변수 추가 등 전반적인 여러 개선 사항이 이루어졌습니다.
Cppcheck에 익숙하지 않은 분들을 위해 설명드리자면, Cppcheck는 C/C++ 애플리케이션 개발자에게 유용한 도구입니다. 이 도구 모음을 사용하면 프로그램의 코드 불일치, 버퍼 오버플로 및 기타 문제를 쉽게 검사할 수 있습니다.
Cppcheck를 사용하면 원하는 코드로 빠르게 이동하여 편집을 시작할 수 있습니다. 이를 위해 코드를 두 번 클릭하기만 하면 메모장과 함께 열립니다. 메모장을 사용하지 않는 경우 일부 응용 프로그램을 구성할 수 있습니다. 코드를 엽니다.
코드 분석에는 자체 분석기 또는 Clang에서 제공하는 외부 분석기를 사용할 수 있습니다 . 또한 Debian 패키지의 공동 코드 검토를 위한 로컬 리소스를 제공하는 스크립트도 포함되어 있습니다.
cppcheck 2.11의 주요 새 기능
cppcheck 2.11의 새로운 버전 에는 명령줄 인터페이스가 개선 되었으며, 특히 검사의 상세 수준을 설정하는 새로운 옵션인 "--check-level"이 추가되었습니다 . 기본값은 "normal"입니다. 더 철저한 검사를 위해서는 값을 "exhaustive"로 설정할 수 있습니다.
또 다른 주목할 만한 변화는 정수 값을 필요로 하는 일부 명령줄 옵션에 대한 설정 값 제어 기능이 개선되었다는 점 입니다. 또한 "missingInclude" 및 "missingIncludeSystem" 에 대한 자세한 메시지를 얻기 위해 더 이상 "--check-config"를 실행할 필요가 없습니다 . " missingInclude "가 활성화된 경우 일반 검사에서 항상 해당 메시지가 출력되기 때문입니다 .
또한, .cppcheck 파일은 더 이상 사용되지 않으며 버전 2.14에서 "지정되지 않음" 플랫폼 유형 지원을 위해 제거될 예정이므로, 이제 "지정되지 않음"을 사용하는 것이 좋습니다. 프로젝트 파일 선택 대화 상자에서 상대 경로를 절대 경로로 바꾸는 옵션이 제거되었습니다.
또한 빈 컨테이너에 대한 pop_back() 검증이 추가되었으며 , STL 라이브러리 알고리즘 any_of, all_of 및 none_of에 대한 루프 제어가 개선되었고 제어 흐름 분석기가 개선되었다는 점도 주목할 만합니다 .
또한, 조건문을 사용하더라도 함수의 반환값을 확인할 수 있으며, constParameter 및 constVariable 검사가 매개변수 또는 변수가 포인터, 참조 또는 지역 변수인지에 따라 각각 3개의 식별자로 분리되어 특정 유형의 메시지를 보다 정확하게 억제할 수 있게 되었다고 언급되어 있습니다.
이번 새 릴리스의 주목할 만한 다른 변경 사항은 다음과 같습니다.
- 함수가 반환하는 컨테이너의 크기를 재정의합니다.
- 가능한 상징적 의미에서 가능한 의미를 추론합니다.
- 컨테이너에 값을 넣은 후 개선되었습니다.
- "missingInclude" 및 "missingIncludeSystem" 메시지는 이제 "–error-exitcode" 옵션을 사용합니다.
- "-j1" 옵션으로 프로젝트를 스캔할 때 코드 파일이 처리될 때까지 마크업 파일 처리가 지연됩니다.
마지막으로, 이 새로운 버전에 대해 더 자세히 알고 싶으 시다면 다음 링크에서 자세한 내용을 확인하실 수 있습니다 .
Linux에 cppcheck를 설치하는 방법은 무엇입니까?
Linux 배포판에 cppcheck를 설치하는 데 관심이 있는 사용자는 아래에서 공유하는 지침을 따를 수 있습니다.
데비안 사용자이거나 디핀, 우분투 등 데비안을 기반으로 하거나 파생된 다른 배포판 사용자 라면 터미널에서 다음 명령어를 입력하여 직접 설치할 수 있습니다.
sudo apt-get install cppcheck
페도라 및 파생 배포판 사용자는 다음 명령어를 입력하여 설치를 진행할 수 있습니다.
sudo yum instalar cppcheck
Arch Linux 또는 그 파생 배포판을 사용하는 사용자는 다음 명령어를 사용하여 설치할 수 있습니다.
sudo pacman -S cppcheck