在cursor中配置c/c++开发环境

安装插件

  1. c/c++插件 ms-vscode.cpptools
    C++拓展新版本不支持cursor,需要将版本退回到1.23.6之前的,如果无法安装回退版本,解决方案是下载github源码上特定版本的visx文件。v1.23.6
    例如本次使用的就是cpptools-windows-x64.vsix
  2. cmake插件 ms-vscode.cmake-tools

配置文件

  1. launch.json
json 复制代码
{
	"version": "0.2.0",
	"configurations": [
		{
			"name": "Debug mine-cpp",
			"type": "cppdbg",
			"request": "launch",
			"program": "${workspaceFolder}/build/mine-cpp.exe",
			"cwd": "${workspaceFolder}",
			"MIMode": "gdb",
			"miDebuggerPath": "C:/MinGW/bin/gdb.exe",
			"preLaunchTask": "CMake: build"
		}
	]
}
  1. settings.json
json 复制代码
{
	"cmake.cmakePath": "C:/Program Files/CMake/bin/cmake.exe",
	"cmake.sourceDirectory": "${workspaceFolder}",
	"cmake.useCMakePresets": "always",
	"cmake.environment": {
		"PATH": "C:\\MinGW\\bin;C:\\Program Files\\CMake\\bin;${env:PATH}"
	},
	"cmake.enableLanguageServices": true,
	"terminal.integrated.env.windows": {
		"PATH": "C:\\MinGW\\bin;C:\\Program Files\\CMake\\bin;${env:PATH}"
	},
	"C_Cpp.default.compileCommands": "${workspaceFolder}/build/compile_commands.json",
	"C_Cpp.default.compilerPath": "C:/MinGW/bin/g++.exe",
	"C_Cpp.default.cppStandard": "c++17",
	"C_Cpp.default.intelliSenseMode": "windows-gcc-x64"
}
  1. tasks.json
json 复制代码
{
	"version": "2.0.0",
	"tasks": [
		{
			"label": "CMake: build",
			"type": "shell",
			"command": "cmake",
			"args": ["--build", "${workspaceFolder}/build"],
			"options": {
				"cwd": "${workspaceFolder}",
				"env": {
					"PATH": "C:\\MinGW\\bin;C:\\Program Files\\CMake\\bin;${env:PATH}"
				}
			},
			"group": { "kind": "build", "isDefault": true },
			"problemMatcher": ["$gcc"]
		},
		{
			"label": "CMake: clean",
			"type": "shell",
			"command": "cmake",
			"args": ["--build", "${workspaceFolder}/build", "--target", "clean"],
			"options": {
				"cwd": "${workspaceFolder}",
				"env": {
					"PATH": "C:\\MinGW\\bin;C:\\Program Files\\CMake\\bin;${env:PATH}"
				}
			},
			"problemMatcher": []
		}
	]
}
  1. CMakeLists.txt
c 复制代码
cmake_minimum_required(VERSION 3.16)
project(mine-cpp LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

add_executable(mine-cpp src/main.cpp src/byte_demo.cpp)
  1. CMakePresets.json
json 复制代码
{
	"version": 3,
	"configurePresets": [
		{
			"name": "mingw-debug",
			"displayName": "MinGW Makefiles --- Debug",
			"generator": "MinGW Makefiles",
			"binaryDir": "${sourceDir}/build",
			"cacheVariables": {
				"CMAKE_BUILD_TYPE": "Debug",
				"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
				"CMAKE_CXX_COMPILER": "C:/MinGW/bin/g++.exe",
				"CMAKE_MAKE_PROGRAM": "C:/MinGW/bin/mingw32-make.exe"
			}
		}
	],
	"buildPresets": [
		{
			"name": "mingw-debug",
			"configurePreset": "mingw-debug"
		}
	]
}

配置cmake预设

  1. ctrl+shift+p,输入CMake: Select Configure Preset

  2. 选择MinGW Makefiles --- Debug

完整结构

相关推荐
名字还没想好☜4 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
·薯条大王5 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
一壶浊酒..7 小时前
Scrape Webpack练习
开发语言·javascript·webpack
命运之光8 小时前
【C语言完整代码】就诊信息管理系统
java·c语言·开发语言
命运之光8 小时前
【C语言完整代码】图书管理系统:图书馆场景下的增删改查实战
c语言·开发语言
猿长大人9 小时前
C# | Serilog 新手入门
开发语言·c#·.net·log
hansang_IR9 小时前
【题解】LC:倍增 / 区间并查集(Range Parallel Unionfind)
c++·算法·并查集
东东最爱敲键盘9 小时前
day7.c++继承
c++
在世修行10 小时前
从零打造 C# 工业视觉检测系统(七):串口通信 SerialPort 封装与开发
开发语言·c#·modbus rtu·rs232/rs485
沫璃染墨10 小时前
《从零入门Linux系统篇(十五):系统工具篇·六——GDB调试器详解:从程序执行控制到高级调试技巧》
linux·运维·服务器·c语言·c++