As a developer, I’ve encountered my fair share of errors in Visual Studio Code (VSCode). One particularly frustrating error is the “Il preLaunchTask ‘C/C++: g++.exe build active file’ è terminato con codice di uscita 1” error. I’ll guide you through the steps to resolve this error and get back to coding.
Understanding the Error
The error message indicates that the preLaunchTask in your launch.json file has failed with an exit code of 1. This usually means there’s an issue with the build process, often related to incorrect paths, missing dependencies, or misconfigured settings in your tasks.json file.
Review Your launch.json File
Your launch.json file is responsible for configuring the debugger. Here’s a sample configuration for C/C++ debugging:
JSON
{
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe - Build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\\Program Files\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++.exe build active file"
}
]
}
Key Points to Check:
- Ensure the
miDebuggerPath
points to the correct location ofgdb.exe
. - Verify that the
preLaunchTask
name matches the label in yourtasks.json
file.
Review Your tasks.json File
The tasks.json
file defines the build task that compiles your C/C++ code. Here’s an example configuration:
JSON
{
"tasks": [
{
"type": "shell",
"label": "C/C++: g++.exe build active file",
"command": "C:\\Program Files\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
],
"version": "2.0.0"
}
Key Points to Check:
- Ensure the
command
path points to the correct location ofg++.exe
. - Verify that the
args
are correctly specified for your build process. - Confirm that the
label
matches thepreLaunchTask
name inlaunch.json
.
Common Issues and Fixes
- Incorrect Paths: Double-check the paths to
g++.exe
andgdb.exe
in bothlaunch.json
andtasks.json
. Ensure they are correct and accessible. - Missing Dependencies: Make sure MinGW or your C/C++ compiler is properly installed and added to your system’s PATH.
- File Permissions: Ensure VSCode has the necessary permissions to access and execute the files in the specified directories.
- Syntax Errors: Validate your JSON files for any syntax errors using a JSON validator.
Test Your Configuration
After making the necessary adjustments:
- Save both
launch.json
andtasks.json
. - Restart VSCode to ensure the changes take effect.
- Try building and debugging your C/C++ file again.
Conclusion
By carefully reviewing and correcting your launch.json
and tasks.json
configurations, you should be able to resolve the preLaunchTask error and successfully compile and debug your C/C++ code in VSCode. If the issue persists, consider reinstalling your compiler or seeking help from the VSCode community.