vscode clangd 插件第三方库头文件不识别
·
clangd 依赖 compile_commands.json 文件来获取项目的编译命令和头文件路径。根据你的项目构建工具,可以采用以下方法生成:
- 对于 CMake 项目:在项目的
CMakeLists.txt文件中添加set(CMAKE_EXPORT_COMPILE_COMMANDS ON),然后重新构建项目即可生成该文件。 - 对于 Makefile 项目:可以使用
bear工具。在项目目录下执行bear -- make命令(或bear make),bear会拦截编译过程并生成compile_commands.json文件。
生成后,确保 compile_commands.json 文件位于项目的根目录下,或者你在 VSCode 的 clangd 设置中手动指定其绝对路径3。
关键:
1.检查vscode中C++ 插件智能提示是否关闭(或者直接卸载C++插件)
2.对于CMake 或Makefile 。保证第三方头文件路径设置是否正确。
3.确保 compile_commands.json 文件位于项目的根目录下
(或者在根目录创建compile_commands.json,然后通过软链接 依赖到cmake中build下的compile_commands.json。)
# 在项目根目录执行(假设 build 目录路径如下)
ln -s out/build/Cameradetection/compile_commands.json ./compile_commands.json
补充:
在vscode中添加文件

内容如下:
{
"clangd.path": "clangd-18",
"clangd.arguments": [
"--background-index",
"--clang-tidy",
"--query-driver=/usr/bin/aarch64-linux-gnu-g++",
]
}
备注:clangd 版本为 18(比较好用)
更多推荐
所有评论(0)