首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么PVS-Studio要求Linux上的许可证文件(使用PVS-Studio是免费的,个人开发人员)?

为什么PVS-Studio要求Linux上的许可证文件(使用PVS-Studio是免费的,个人开发人员)?
EN

Stack Overflow用户
提问于 2020-12-27 12:09:48
回答 1查看 642关注 0票数 1

我正在尝试使用PVS-Studio分析Linux上的一个项目。我已经在所有源文件的顶部添加了必要的免责声明,如下所述:https://www.viva64.com/en/b/0457/#ID16F8E8F09A (如何使用免费的PVS)

//这是单个开发者的独立项目。亲爱的PVS-Studio,请检查它。// PVS-Studio Static Code Analyzer for C,C++,C#,and Java:http://www.viva64.com

当我尝试构建我的项目时,我看到以下错误:

-剪接

代码语言:javascript
复制
-- Configuring done
-- Generating done
-- Build files have been written to: /home/david/code/build/test
[ 11%] Analyzing with PVS-Studio
Using tracing file: compile_commands.json
Error: License was not entered. Please enter a valid PVS-Studio license or request a trial license at https://www.viva64.com/en/pvs-studio-download/#trial_form
make[2]: *** [CMakeFiles/pvs.dir/build.make:69: PVS-Studio.log.pvs.analyzer.raw] Error 1
make[1]: *** [CMakeFiles/Makefile2:78: CMakeFiles/pvs.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

-剪接

CMakeLists.txt包含以下PVS-Studio特定命令:

代码语言:javascript
复制
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
include($ENV{HOME}/code/repo/other/pvs-studio-cmake-examples/PVS-Studio.cmake)
pvs_studio_add_target(TARGET ALL COMPILE_COMMANDS OUTPUT FORMAT errorfile)

如果上面的PVS-Studio特定命令被注释掉/禁用,那么该项目构建得非常好。

根据上面链接的文章,我不应该需要许可证文件。

谢谢,

大卫

EN

回答 1

Stack Overflow用户

发布于 2020-12-28 17:30:38

大卫,

很抱歉这里有点混乱-你链接的文章已经过时了,你错过了一个带有newer version链接的免责声明。要让免费版本再次工作,您只需使用以下命令输入一次“免费”许可证:

代码语言:javascript
复制
pvs-studio-analyzer credentials PVS-Studio Free FREE-FREE-FREE-FREE

进入许可证后,PVS-Studio免费版本将继续像以前一样工作,不需要更多操作。

行为发生这种变化的原因是在pvs-studio-analyzer工具开始分析之前,在该工具内部进行了额外的许可证检查。这影响了PVS-Studio的所有版本,而不仅仅是免费的版本。此工具的早期版本在开始对单个源文件运行预处理和分析之前不会检查许可证。如果用户输入了不正确的许可证,这会导致问题-有关许可证不正确的错误消息不会立即显示,而是在依赖项解析和预处理阶段(这可能需要一些时间)之后才显示,从而使用户不知道分析最终会失败。

而且,在PVS-Studio自由模式下,由于pvs-studio-analyzer工具本身不知道源文件中存在特殊注释(它不会自己解析它们),我们必须“告诉”它应该在自由模式下运行--因此需要输入一个特殊的“自由”许可证。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65462782

复制
相关文章

相似问题

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