最近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按鈕就可以正常編譯: