#在Ubuntu下,使用PVS-Studio
简介: PVS-Studio是一个C++,C#代码质量分析工具,因为我不用C#,所以这里介绍一下它在Linux下的分析C++代码质量的功能。官方网址在:https://www.viva64.com.
1.安装。
安装的主要过程参考 https://www.viva64.com/en/m/0039/。
在Ubuntu控制台输入以下命令:
wget -q -O - http://files.viva64.com/etc/pubkey.txt | \
sudo apt-key add -
sudo wget -O /etc/apt/sources.list.d/viva64.list \
http://files.viva64.com/etc/viva64.list
sudo apt-get update
sudo apt-get install pvs-studio
稍等一会儿就安装好了, 检查是否安装完成。
pvs-studio --version
出现下图表示安装完成
2.运行官方示例
前提: 需要提前安装好cmake以及c++编译器。
官方示例的网址在:
https://github.com/viva64/pvs-studio-cmake-examples。
下载zip包,并且解压。 在控制台中进入解压后的目录,创建编译目录并进入。
mkdir PVS
cd PVS
对第一个例子进行编译。
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=On ../example-1
控制台输出:
代码错误位置(打开example-1的main.cpp):
3.在自己的代码中使用
下载一个没有使用PVS-Studio的代码 以我的Calculater为例 https://github.com/DennisCoder1024/Calculater/releases。
- 解压进入到目录,在source目录下有CMakeLists.txt /p> /li>
- 创建目录,编译原有项目。
mkdir Build
cd Build
cmake ..
make -j
- 将 code>pvs-example
的 code>PVS-Studio.cmake
拷贝到 解压目录。 - 添加PVS-Studio编译需要的相关代码,。
- 在CMakeLists.txt中,
找到
add_executable(calcu ${SOURCE_FILE})
在后面添加
if(PVS_STUDIO)
include(../PVS-Studio.cmake)
pvs_studio_add_target(TARGET example1.analyze ALL
OUTPUT FORMAT errorfile
ANALYZE ${PROJECT}
MODE GA:1,2 OP
LOG target.err)
endif()
${PROJECT}
的内容要替换为 add_executable
的内容即 calcu
。
修改好的内容
if(PVS_STUDIO)
include(../PVS-Studio.cmake)
pvs_studio_add_target(TARGET example1.analyze ALL
OUTPUT FORMAT errorfile
ANALYZE calcu
MODE GA:1,2 OP
LOG target.err)
endif()
修改源代码 在每个源文件的前面,加入以下两行.
// This is an open source non-commercial project. Dear PVS-Studio, please check it.
// PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com
使用下面的命令编译代码。
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=On -DPVS_STUDIO=1 ..
make
错误输出
可以看到检查出了错误,如下图所示:
代码位置在: