首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Linux上使用CMake时,我如何告诉PVS-Studio忽略第三方库中的所有文件?

在Linux上使用CMake时,我如何告诉PVS-Studio忽略第三方库中的所有文件?
EN

Stack Overflow用户
提问于 2019-08-01 15:31:17
回答 1查看 206关注 0票数 1

我在Linux上使用带有CMake的PVS-Studio。我最近在我的项目中添加了一个第三方库。

PVS-Studio正在标记第三方库的头文件中可能存在的问题。如何告诉PVS-Studio在分析代码时忽略整个第三方库?在Windows的Visual Studio中使用PVS-Studio时,我可以使用Visual Studio中的PVS-Studio扩展来实现这一点。在Linux上,我没有这个功能。

我已经将我的CMakeLists.txt文件附加到这个项目(它非常简单)加上由PVS-Studio发出的警告列表。

CMakeLists.txt

代码语言:javascript
复制
cmake_minimum_required(VERSION 3.15.0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
project(my_project)
include_directories($ENV{HOME}/code/repo/other/GSL/include)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
set(proj_srcs main.cpp notes.txt)
add_executable(${PROJECT_NAME} ${proj_srcs})
include($ENV{HOME}/code/repo/other/pvs-studio-cmake-examples/PVS-Studio.cmake)
pvs_studio_add_target(TARGET ALL COMPILE_COMMANDS OUTPUT FORMAT errorfile)

警告

代码语言:javascript
复制
.../other/GSL/include/gsl/multi_span:663:1: warning: V547 Expression is always true.
.../other/GSL/include/gsl/multi_span:1163:1: warning: V560 A part of conditional expression is always true: totalSize <= (9223372036854775807L).
.../other/GSL/include/gsl/string_span:118:1: warning: V547 Expression 'cur != nullptr' is always true.

谢谢,

大卫

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-02 14:44:41

您可以使用此参数:

代码语言:javascript
复制
-e [DIR], --exclude-path [DIR]
   Directory whose files are not necessary to check

CMakeLists.txt:

代码语言:javascript
复制
pvs_studio_add_target(TARGET ALL
                      COMPILE_COMMANDS
                      OUTPUT FORMAT errorfile
                      ARGS -e /path/to/third/party -e /path/to/tests)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57303896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档