"default": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Specifies the name of the entry in the Debug target dropdown."
},
"project": {
"type": "string",
"description": "Specifies the relative path to the project file."
},
"projectTarget": {
"type": "string",
"description": "Specifies the optional target invoked when building 'project'. This projectTarget must already exist and match the name in the Debug Target dropdown."
},
"debugType": {
"type": "string",
"enum": [
"native",
"managed",
"mixed"
],
"description": "Specifies the debugging mode according to the type of code (native, managed or mixed). This will automatically be detected unless this parameter is set."
},
"inheritEnvironments": {
"type": "array",
"items": {
"type": "string"
},
"description": "Specifies a set of environment variables inherited from multiple sources.\ne.g., You can define some variables in files like CMakeSettings.json or CppProperties.json and make them available to debug context"
},
"args": {
"type": "array",
"description": "Specifies the command-line arguments passed to the launched program."
},
"currentDir": {
"type": "string",
"description": "Specifies the full directory path to the Build Target. This will automatically be detected unless this parameter is set."
},
"noDebug": {
"type": "boolean",
"description": "Specifies whether or not to debug the launched program. The default value for this parameter is false if not specified.",
"default": false
},
"stopOnEntry": {
"type": "boolean",
"description": "Specifies whether or not to break a soon as the process is launched and the debugger attaches. The default value for this parameter is false.",
"default": false
},
"remoteMachine": {
"type": "string",
"description": "Specifies the name of the remote machine where the program is launched."
},
"env": {
"description": "Specifies a key-value list of custom environment variables.\ne.g.\"env\":{\"myEnv\":\"myVal\"}.\nProviding a string of environment variables separated by null character will be deprecated in a future release",
"oneOf": [
{
"type": "string"
},
{
"type": "object"
}
]
},
"portName": {
"type": "string",
"description": "Specifies the name of port when attaching to a running process."
},
"buildConfigurations": {
"type": "array",
"items": {
"allOf": [
{
"properties": {
"name": {
"type": "string",
"description": "Specifies the name of the build mode to apply the configurations. For example 'Debug' or 'Release'"
}
},
"required": [
"name"
]
},
{
"$ref": "#/definitions/default"
}
]
},
"description": "Specifies the configurations to use according to the selected build mode. The build mode should be specified using the property \"name\"\ne.g., \"name\": \"Debug\""
}
},
"required": [
"name",
"project"
]
},
"gdb_linux_schema": {
"type": "object",
"properties": {
"comment": {
"type": "string",
"description": "指定配置文档。将忽略该值。"
},
"type": {
"type": "string",
"enum": [
"cppgdb"
]
},
"debuggerConfiguration": {
"type": "string",
"enum": [
"gdb",
"gdbserver"
],
"description": "指定 gdb 或 gdbserver 配置。"
},
"args": {
"type": "array",
"description": "Specifies the command line arguments passed to the program being debugged.",
"items": {
"type": "string"
}
},
"env": {
"type": "object",
"description": "指定传递给被调试程序的环境变量 \"name\": \"value\" 对。"
},
"program": {
"type": "string",
"description": "指定要调试的应用程序的 Linux 路径。仅当它与生成或部署位置中的目标可执行文件不同时才需要。"
},
"processId": {
"type": "integer",
"description": "指定要将调试程序附加到的 Linux 进程的进程 ID (pid)。"
},
"remoteMachineName": {
"type": "string",
"description": "指定远程计算机的名称。仅当与生成计算机不同时才需要。在连接管理器中必须有一个条目。"
},
"cwd": {
"type": "string",
"description": "指定要从中运行 \"program\" 的远程计算机上的当前目录。目录必须存在。"
},
"gdbPath": {
"type": "string",
"description": "在 gdb 配置中指定要用于调试的 gdb 的完整 Linux 路径,在 gdbserver 配置中指定 gdb 的完整 Windows 路径。"
},
"gdbserver": {
"type": "object",
"description": "指定特定于使用 gdbserver 调试的属性。",
"properties": {
"path": {
"type": "string",
"description": "指定要用于调试的 gdbserver 的 Linux 路径。默认为 \"gdbserver\"。"
},
"remotePort": {
"type": "integer",
"description": "指定远程计算机上要用于 gdbserver 的端口。可选。"
},
"localPort": {
"type": "integer",
"description": "指定本地计算机上要用于与 gdbserver 通信的端口。可选。"
}
}
},
"preDebugCommand": {
"type": "string",
"description": "指定在启动 gdb 或 gdbserver 之前立即运行的 Linux 命令。仅当该命令完成后才会开始调试。"
},
"disableDeploy": {
"type": "boolean",
"default": false,
"description": "指示是否禁用了生成/调试分隔。启用后,此功能允许在两台不同的计算机上分别生成和调试。"
},
"deployDirectory": {
"type": "string",
"description": "指定要将可执行文件复制到的 remoteMachineName 值指定的远程计算机上的目录。"
},
"deploy": {
"type": "array",
"description": "指定部署设置的高级配置。",
"items": {
"type": "object",
"properties": {
"sourceMachine": {
"type": "string",
"description": "指定要由其复制文件的计算机,请使用连接管理器添加新的 Linux 计算机。使用 CMake 时,可使用宏 ${debugInfo.remoteMachineName} 作为此字段的值。"
},
"targetMachine": {
"type": "string",
"description": "指定要将文件复制到的计算机,请使用连接管理器添加新的 Linux 计算机。使用 CMake 时,可使用宏 ${debugInfo.remoteMachineName} 作为此字段的值。"
},
"sourcePath": {
"type": "string",
"description": "指定 sourceMachine 上的文件位置。"
},
"targetPath": {
"type": "string",
"description": "指定 targetMachine 上的文件位置。"
},
"deploymentType": {
"type": "string",
"enum": [
"LocalRemote",
"RemoteRemote"
],
"description": "指定部署类型。将此值设置为 LocalRemote 将意味着从本地文件系统复制到 launch.vs.json 中的 remoteMachineName 指定的远程计算机。RemoteRemote 将从 CMakeSettings.json 中指定的一台远程计算机部署到 launch.vs.json 中指定的另一台计算机。"
},
"executable": {
"type": "boolean",
"description": "指示部署的文件是否为可执行文件。"
}
}
}
}
},
"required": [
"type",
"debuggerConfiguration"
]
},
launcher.vs.json 中 cppgdb配置
最新推荐文章于 2024-12-02 17:30:07 发布