tra*_*arx 5 c cmake clang qt-creator clang-static-analyzer
我使用 QtCreator 作为 IDE 和 CMake 使用 CMake 编写我的项目进行构建。QtCreator 版本。>= 4.0.0 包含我尝试使用的 Clang 静态分析器。
在我的 CMakeLists.txt 集中:
set(CMAKE_C_FLAGS "-std=gnu99 ${CMAKE_C_FLAGS}")
当我在控制台中启动分析时出现错误:
error: invalid argument '-std=gnu++11' not allowed with 'C/ObjC'
如何将'-std=gnu99'传递给clang分析器?也许它是在 QtCreator 插件源中硬编码的?
UDP1:似乎是 QtCreator 的错误:https ://bugreports.qt.io/browse/QTCREATORBUG-16290
变量CMAKE_C_FLAGS是用于C代码的,而不是用于C++代码的。您应该将其添加到CMAKE_CXX_FLAGS中。
set(CMAKE_CXX_FLAGS "-std=gnu++11 ${CMAKE_CXX_FLAGS}")
Run Code Online (Sandbox Code Playgroud)
要保留-std=gnu99C 代码,您需要添加:
set(CMAKE_C_FLAGS "-std=gnu99 ${CMAKE_C_FLAGS}")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1900 次 |
| 最近记录: |