cmake编译数据库

在使用CMake进行编译时,如果你想生成编译数据库,你可以定义CMAKE_EXPORT_COMPILE_COMMANDS选项。具体的命令如下:

bash 复制代码
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=1

或者在CMakeLists.txt显示的使能配置

复制代码
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

这将会生成一个compile_commands.json文件,这个文件可以有效提高一些工具(比如ccls,vscode)的代码跳转、补全等功能。

如果你的工程是使用Makefile来编译的,没有现成的选项可以生成compile_commands.json文件,你可以通过Bear来生成,而且不需要改动代码。具体的命令如下:

bash 复制代码
bear make -j

这就是在原有编译命令之前加上bear即可。生成之后你就可以享受更精准的跳转和补全了。

相关推荐
学编程的闹钟16 小时前
安装GmSSL3库后用VS编译CMake源码
c语言·c++·ide·开发工具·cmake·visual studio
十五年专注C++开发9 天前
CMake进阶:SelectLibraryConfigurations模块
c++·cmake·自动化构建
元让_vincent10 天前
DailyCoding C++ CMake | CMake 踩坑记:解决 ROS 项目中的“循环引用”与库链接依赖问题
c++·机器人·ros·动态库·静态库·cmake·循环引用
周小天..11 天前
QT6+cmake+cuda的构建(windows)
cmake
Laurence12 天前
CMake / Ninja 构建 Qt 项目报 undefined reference to __imp__ 错误的解决方法
qt·cmake·项目构建·undefined·ninja·__imp__
___波子 Pro Max.12 天前
CMake configure_file使用教程详解
cmake
D.不吃西红柿18 天前
CPM.cmake轻量级包管理器
c++·cmake·cpm.cmake
十五年专注C++开发1 个月前
CMake基础: 在release模式下生成调试信息的方法
linux·c++·windows·cmake·跨平台构建
kimicsdn1 个月前
opentelemetry-demo currency cpp 项目编译流程分享
c++·cmake·libprotobuf-dev
十五年专注C++开发1 个月前
CMake进阶:模块模式示例FindOpenCL.cmake详解
开发语言·c++·cmake·跨平台编译