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

相关推荐
玩转C语言和数据结构2 天前
CMake下载和安装图解(附安装包,适合新手)
cmake·cmake下载·cmake安装·cmake 下载·cmake 安装·安装cmake·cmake下载安装
周之鸥8 天前
Qt 项目国际化从零到一:用 Qt Linguist 实现多语言动态切换(含源码与踩坑指南)
qt·i18n·cmake·qmake·linguist·lupdate·lrelease
老黄编程10 天前
ros2 中 CMakeLists.txt 的 ament_package 有什么用?有什么使用约束?必须放置尾部吗?
ros·cmake
澄澈i11 天前
CMake学习篇[3]---CMake进阶+嵌套CMakeLists+多层级关系
c++·学习·cmake
一只小bit17 天前
CMake 入门实战手册:从理解原理开始,打造高效 C/C++ 开发流程
c语言·开发语言·c++·cmake
研來如此22 天前
Visual Studio 2022
cmake·visual studio
澄澈i1 个月前
CMake学习篇[2]---CMake进阶+非同级目录构建+静态库/动态库链接
c++·学习·cmake
usabcd21 个月前
如何重新编译HyperLPR原生库以消除16k对齐警告
android·c++·cmake·ndk·mnn·16k对齐·hyperlpr
慧都小项1 个月前
Parasoft C/C++test 针对 CMake 项目的自动化测试配置
自动化测试·cmake·parasoft
羑悻的小杀马特1 个月前
CMake 全流程开发实战:从零开始掌握C++项目构建、测试到一键分发的完整解决方案
c++·cmake