Mat
Aktives Mitglied
Ich wollte mal ein bisschen VSCode ausprobieren für die Arbeit mit C.
Eigentlich hatte ich ein Problem beim Kompilieren per VSCode-Task auf einem Netzlaufwerk.. das Programm wurde nie erzeugt und es kam immer Exit Code 1. Aber es hat sich herausgestellt, dass da nur ein Virenschutz dazwischengefunkt hat. Das hat sich erledigt.
Ich kann aber bei der Gelegenheit mal nachfragen, ob noch jemand anders C in Visual Studio Code schreibt und wie ihr das bei euch eingerichtet habt.
Ich wollte mir eine Projektvorlage fertigmachen, die ich dann für neue Projekte weiterverwenden kann. Gedacht war dabei kein zusammenhängendes großes Projekt, sondern eher eine Sammlung von einzeln ausführbaren C-Programmen (also ich brauche kein CMake).
Mein Aufbau (noch nicht fertig):
Launch.json fürs Debuggen ist fast unverändert.. hab nur den GDB-Pfad eingetragen:
Eigentlich hatte ich ein Problem beim Kompilieren per VSCode-Task auf einem Netzlaufwerk.. das Programm wurde nie erzeugt und es kam immer Exit Code 1. Aber es hat sich herausgestellt, dass da nur ein Virenschutz dazwischengefunkt hat. Das hat sich erledigt.
Ich kann aber bei der Gelegenheit mal nachfragen, ob noch jemand anders C in Visual Studio Code schreibt und wie ihr das bei euch eingerichtet habt.
Ich wollte mir eine Projektvorlage fertigmachen, die ich dann für neue Projekte weiterverwenden kann. Gedacht war dabei kein zusammenhängendes großes Projekt, sondern eher eine Sammlung von einzeln ausführbaren C-Programmen (also ich brauche kein CMake).
Mein Aufbau (noch nicht fertig):
Code:
Projektordner
|___ .vscode
| |___ projekt.code-workspace
| |___ tasks.json
| |___ launch.json
|___ src1
| |___ main.h
| |___ main.c
| |___ main.exe
|___ src2
|___ main.c
|___ main.exe
projekt.code-workspace:
{
"folders": [
{
"path": ".\\.."
}
],
"settings": {},
"extensions": {
"recommendations": []
}
}
tasks.json:
{
"version": "2.0.0",
"tasks": [
{
"label": "Build",
"type": "shell",
"command": "${env:USERPROFILE}\\scoop\\apps\\gcc\\current\\bin\\gcc.exe",
"args": [
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"group": "build"
},
{
"label": "Dump",
"type": "shell",
"command": "${env:USERPROFILE}\\scoop\\apps\\gcc\\current\\bin\\objdump.exe",
"args": [
"--disassemble",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"--line-numbers",
"--wide",
">",
"${fileDirname}\\${fileBasenameNoExtension}.dump"
],
"dependsOn": "Build"
}
]
}
Launch.json fürs Debuggen ist fast unverändert.. hab nur den GDB-Pfad eingetragen:
launch.json:
{
"version": "0.2.0",
"configurations": [
{
"name": "gcc.exe - Aktive Datei erstellen und debuggen",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "${env:USERPROFILE}\\scoop\\apps\\gdb\\current\\bin\\gdb.EXE",
"setupCommands": [
{
"description": "Automatische Strukturierung und Einrückung für \"gdb\" aktivieren",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: gcc.exe build active file"
}
]
}