vscode: update debug configurations

Signed-off-by: EnderIce2 <enderice2@protonmail.com>
This commit is contained in:
EnderIce2 2025-01-13 09:20:42 +02:00
parent 137f16bc55
commit 210e06429c
No known key found for this signature in database
GPG Key ID: 2EE20AF089811A5A

102
.vscode/launch.json vendored
View File

@ -2,39 +2,105 @@
"version": "0.2.0", "version": "0.2.0",
"configurations": [ "configurations": [
{ {
"name": "Launch QEMU & debug the kernel", "name": "Debug Kernel (x64)",
"type": "cppdbg", "type": "cppdbg",
"request": "launch", "request": "launch",
"program": "${workspaceFolder}/../Kernel/fennix.elf", "program": "${workspaceFolder}/../Kernel/fennix.elf",
"cwd": "${workspaceFolder}", "cwd": "${workspaceFolder}",
"args": [],
"targetArchitecture": "x64", "targetArchitecture": "x64",
"MIMode": "gdb", "MIMode": "gdb",
"miDebuggerServerAddress": "/tmp/gdb-fennix", "miDebuggerServerAddress": "/tmp/gdb-fennix",
"miDebuggerPath": "${workspaceFolder}/../tools/cross/bin/x86_64-fennix-gdb", "miDebuggerPath": "${workspaceFolder}/../tools/cross/bin/x86_64-fennix-gdb",
"miDebuggerArgs": "",
"externalConsole": false, "externalConsole": false,
"additionalSOLibSearchPath": "${workspaceFolder}",
"internalConsoleOptions": "neverOpen", "internalConsoleOptions": "neverOpen",
"customLaunchSetupCommands": [
// {
// "text": "target remote localhost:1234",
// "description": "Connect to QEMU remote debugger"
// }
],
"setupCommands": [ "setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{ {
"text": "set breakpoint pending on", "text": "set breakpoint pending on",
"description": "Make breakpoint pending on future shared library load." "description": "Make breakpoint pending on future shared library load."
}, },
{ {
"text": "file ${workspaceFolder}/../Kernel/fennix.elf", "text": "add-symbol-file ${workspaceFolder}/../initrd_tmp_data/bin/utest",
"description": "Load binary" "description": "Load /bin/utest",
"ignoreFailures": true
},
{
"text": "source ${workspaceFolder}/../tools/.gdbinit"
}
],
"preLaunchTask": "launch-qemu"
},
{
"name": "Debug Kernel (x86)",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/../Kernel/fennix.elf",
"cwd": "${workspaceFolder}",
"targetArchitecture": "x86",
"MIMode": "gdb",
"miDebuggerServerAddress": "/tmp/gdb-fennix",
"miDebuggerPath": "${workspaceFolder}/../tools/cross/bin/i386-fennix-gdb",
"externalConsole": false,
"internalConsoleOptions": "neverOpen",
"setupCommands": [
{
"text": "set breakpoint pending on",
"description": "Make breakpoint pending on future shared library load."
},
{
"text": "add-symbol-file ${workspaceFolder}/../initrd_tmp_data/bin/utest",
"description": "Load /bin/utest",
"ignoreFailures": true
},
{
"text": "source ${workspaceFolder}/../tools/.gdbinit"
}
],
"preLaunchTask": "launch-qemu"
},
{
"name": "Debug Kernel (arm64)",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/../Kernel/fennix.elf",
"cwd": "${workspaceFolder}",
"targetArchitecture": "arm64",
"MIMode": "gdb",
"miDebuggerServerAddress": "/tmp/gdb-fennix",
"miDebuggerPath": "${workspaceFolder}/../tools/cross/bin/aarch64-fennix-gdb",
"externalConsole": false,
"internalConsoleOptions": "neverOpen",
"setupCommands": [
{
"text": "set breakpoint pending on",
"description": "Make breakpoint pending on future shared library load."
},
{
"text": "add-symbol-file ${workspaceFolder}/../initrd_tmp_data/bin/utest",
"description": "Load /bin/utest",
"ignoreFailures": true
},
{
"text": "source ${workspaceFolder}/../tools/.gdbinit"
}
],
"preLaunchTask": "launch-qemu"
},
{
"name": "Debug Kernel (arm)",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/../Kernel/fennix.elf",
"cwd": "${workspaceFolder}",
"targetArchitecture": "arm",
"MIMode": "gdb",
"miDebuggerServerAddress": "/tmp/gdb-fennix",
"miDebuggerPath": "${workspaceFolder}/../tools/cross/bin/arm-fennix-gdb",
"externalConsole": false,
"internalConsoleOptions": "neverOpen",
"setupCommands": [
{
"text": "set breakpoint pending on",
"description": "Make breakpoint pending on future shared library load."
}, },
{ {
"text": "add-symbol-file ${workspaceFolder}/../initrd_tmp_data/bin/utest", "text": "add-symbol-file ${workspaceFolder}/../initrd_tmp_data/bin/utest",
@ -50,7 +116,7 @@
{ {
"type": "gdb", "type": "gdb",
"request": "attach", "request": "attach",
"name": "Launch QEMU & attach to gdbserver", "name": "Launch QEMU & attach to gdbserver (x64)",
"executable": "${workspaceFolder}/../Kernel/fennix.elf", "executable": "${workspaceFolder}/../Kernel/fennix.elf",
"target": "/tmp/gdb-fennix", "target": "/tmp/gdb-fennix",
"remote": true, "remote": true,