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即可。生成之后你就可以享受更精准的跳转和补全了。

相关推荐
stonewu11 天前
Cmake入门及CMakeLists.txt 语法介绍
c++·cmake
不知所云,12 天前
QT vscode cmake 编译 undefined reference to `vtable for 问题解决
vscode·qt·cmake
不想被吃掉氩12 天前
CMAKE
windows·unix·cmake
咩咩大主教14 天前
2025最新版使用VSCode和CMake图形化编译调试Cuda C++程序(保姆级教学)
c++·vscode·cmake·visual studio·cuda·cpp·cuda c++
十五年专注C++开发14 天前
CMake实践:指定gcc版本编译和交叉编译
linux·开发语言·c++·cmake·自动化编译
十五年专注C++开发18 天前
Qt .pro配置gcc相关命令(三):-W1、-L、-rpath和-rpath-link
linux·运维·c++·qt·cmake·跨平台编译
old_power24 天前
在 Windows 系统下配置 VSCode + CMake + Ninja 进行 C++ 或 Qt 开发
c++·windows·vscode·cmake·ninja
子正25 天前
一键编译包含多个独立模块和应用的工程(linux cmake)
linux·运维·cmake
___波子 Pro Max.1 个月前
CMake GLOB返回路径规则及示例
cmake
struggle20251 个月前
LLMControlsArm开源程序是DeepSeek 控制熊猫机械臂
人工智能·python·cmake·jupyternotebook·deepseek