【问题标题】:PVS-Studio on Linux - pvs_studio_add_targetLinux 上的 PVS-Studio - pvs_studio_add_target
【发布时间】:2018-06-08 17:25:39
【问题描述】:

我正在尝试使用命令 pvs_studio_add_target 将 PVS-Studio 集成到我的 CMake 项目中。任何人都可以指向一个示例 CMakeLists.txt 文件吗?

当我构建我的项目时,我看到以下输出(除了通常的东西):

正在生成 PVS-Studio.log:未找到来源

我会假设 PVS-Studio 会在 CMAKE_CURRENT_SOURCE_DIR 中查找项目源文件?也许我必须告诉它?以下是我对项目 CMakeLists.txt 文件所做的修改:

set(pvs_studio_cmake "$ENV{HOME}/installers/PVS-Studio.cmake")
include(${pvs_studio_cmake})
# TODO: Generating PVS-Studio.log: no sources found
pvs_studio_add_target(TARGET analyze ALL
                      FORMAT tasklist
                      PREPROCESSOR gcc)

我运行以下命令在 build 目录中配置 CMake(out of source build):

cmake -G "Unix Makefiles" -DCMAKE_EXPORT_COMPILE_COMMANDS=On -DCMAKE_BUILD_TYPE=Debug <source-dir>

我在所有项目 cpp 文件的顶部插入了以下注释。

// This is an independent project of an individual developer. Dear PVS-Studio, please check it.
// PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com

在这个只是 main.cpp 的特定项目中。我有一些只有头文件的模板代码没有相应的 cpp 文件。

谢谢,

大卫

【问题讨论】:

  • 请重新表述您的问题。目前,您正在要求一个离题的示例。问“我应该怎么做才能实现 X?到目前为止我尝试了 Y 并得到了 Z”
  • 嗨,好的。 PVS-Studio 似乎没有找到任何要分析的文件,因此出现消息:“正在生成 PVS-Studio.log:未找到源”。我想知道如何解决这个问题。谢谢,
  • @David 试试这个测试项目:cppfiles.com/test_project.tar.gz
  • @StevenHunter:嗨,Steven,我能够构建您的测试项目。它报告了问题:“错误:V501 '=='运算符的左侧和右侧有相同的子表达式:x == x”。使用示例项目作为参考,我能够解决我的问题。谢谢!

标签: cmake pvs-studio


【解决方案1】:

GitHub 的官方 PVS-Studio 存储库中,您可以找到分析仪与 CMake 集成的文档和测试示例。

【讨论】:

    猜你喜欢
    • 2020-02-04
    • 2021-04-04
    • 2020-02-03
    • 2022-12-01
    • 2019-03-21
    • 2019-01-07
    • 1970-01-01
    • 2018-05-16
    • 2017-12-13
    相关资源
    最近更新 更多