需要scl来指定编译器的clangd+cmake在vscode/cursor开发环境下的配置

发布于:2025-07-05 ⋅ 阅读:(14) ⋅ 点赞:(0)

最近cursor更新了插件商店,只能使用默认它魔改的c/c++插件(基于clangd的),手头刚好在折腾一个cmake工程,试试水尝试直接配置在cursor上可以编译运行。
主要是本地环境使用scl来管理gcc/g++,所以在配置过程中需要特殊的处理,settings.json如下:

{
    "cmake.cmakePath": "/usr/bin/cmake3",
    "cmake.buildDirectory": "${workspaceFolder}/build",
    
    "cmake.configureArgs": [
        "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON",
        "-DCMAKE_C_COMPILER=/opt/rh/devtoolset-11/root/usr/bin/gcc",
        "-DCMAKE_CXX_COMPILER=/opt/rh/devtoolset-11/root/usr/bin/g++"
    ],
    "cmake.buildEnvironment": {
        "PATH": "/opt/rh/rh-python38/root/usr/local/bin:/opt/rh/rh-python38/root/usr/bin:/opt/rh/devtoolset-11/root/usr/bin:${env:PATH}",
        "LD_LIBRARY_PATH": "/opt/rh/rh-python38/root/usr/lib64:/opt/rh/devtoolset-11/root/usr/lib64:/opt/rh/devtoolset-11/root/usr/lib:/opt/rh/devtoolset-11/root/usr/lib64/dyninst:/opt/rh/devtoolset-11/root/usr/lib/dyninst",
        "PKG_CONFIG_PATH": "/opt/rh/rh-python38/root/usr/lib64/pkgconfig:/opt/rh/devtoolset-11/root/usr/lib64/pkgconfig"
    }
}

原来编译方式是:

scl enable devtoolset-11 rh-python38 bash
mkdir -p build && cd build
cmake3 .. -DCMAKE_EXPORT_COMPILE_COMMANDS=ON

配置之后只要点击下方的build按钮就可以正常编译:
在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到