Excerpt
文章目录vscode使用cmake选项配置includePath1.使用cmake导出compile_commands.json1.常规程序2.ros下使用2.向vscode中添加json文件1.生成c_cpp_properties.json文件vscode使用cmake选项配置includePath 使用vscode进行c++代码编写时,配置代码includePath能够提供函数跳转,自动...
明霁天明 2020-03-21 18:28:46 8757 收藏 26
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
使用vscode进行c++代码编写时,配置代码includePath能够提供函数跳转,自动补全以及报错等帮助。由于有些库的路径不太好找且逐条添加到vscode中过于繁琐,本处介绍使用cmake导出json的方式介绍配置vscode环境(适用于CMakeLists.txt编译方式)。
本处在build文件夹下编译程序,导出方式如下:
cd project_dir
mkdir build
cd build
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=YES ..
make
在上面使用cmake时通过添加选项
-DCMAKE_EXPORT_COMPILE_COMMANDS=YES
导出了cmake预编译时查询的编译环境,可在build下找到compile_commands.json文件。
使用ROS的同学同样可以通过添加该选项来生成json文件,编译时命令如下:
catkin_make -DCMAKE_EXPORT_COMPILE_COMMANDS=YES
编译完成后便可在ros工作空间的build文件下找到compile_commands.json文件
如果不想在每次编译时在命令行中添加cmake配置命令,一个简单的方式是在CMakeLists.txt的上面添加
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
这样就不用每次都在终端中输入繁琐的配置命令,直接使用cmake便可以生成compile_commands.json文件
在vscode中使用_ctrl++shift+P_打开Command Palette,运行
C/Cpp: Edit configurations(JSON)
将会在.vscode文件夹下生成c_cpp_properties.json文件,打开后新增compileCommands选项,将第一部分生成的compile_commands.json文件路径添加到c_cpp_properties.json的compileCommands下,样式如下图所示:
这样便在vscode的工程添加了CMakeLists中选定的环境
本文章使用limfx的vscode插件快速发布