¿Estás interesado en comenzar a desarrollar en C++, pero te sientes perdido sobre por dónde empezar en Linux (Ubuntu)? Este artículo presenta la configuración práctica para desarrollar en C++ en un entorno Ubuntu. En particular, VSCode te ayudará a familiarizarte con un entorno de desarrollo donde puedes compilar, ejecutar y depurar tus proyectos.

A menudo se utiliza Visual Studio en Windows, pero en Linux se necesita una configuración alternativa.
Este documento detalla cómo configurar un entorno de desarrollo para C++ en Ubuntu y cómo establecer la automatización de compilación y depuración en VSCode.
Está organizado en pasos para que incluso los principiantes en C++ puedan seguirlo fácilmente.

Linux penguin interacting with C++ logo

1. Instalación de paquetes esenciales

sudo apt update
sudo apt install build-essential gdb

build-essential incluye lo siguiente:

  • g++ : Compilador de C++
  • gcc : Compilador de C
  • make : Herramienta de automatización de compilación
  • y otros como dpkg-dev

2. Instalación de VSCode (basado en Snap)

sudo snap install code --classic

O puedes instalarlo directamente desde https://code.visualstudio.com


3. Instalación de extensiones de VSCode

  • C/C++ (por Microsoft)
  • (Opcional) Code Runner: para ejecutar código rápidamente

4. Crear un directorio del proyecto y preparar un archivo de ejemplo

mkdir ~/cpp_projects/helloworld
cd ~/cpp_projects/helloworld
code .

Crear el archivo de ejemplo main.cpp:

#include <iostream>

int main() {
    std::cout << "¡Hola, C++!" << std::endl;
    return 0;
}

5. Configuración de .vscode/tasks.json (compilación automática)

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "compilar archivo C++",
            "type": "shell",
            "command": "g++",
            "args": [
                "-g",
                "main.cpp",
                "-o",
                "main"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": ["$gcc"],
            "detail": "Compilar main.cpp a main"
        }
    ]
}

Puedes compilar con Ctrl + Shift + B


6. Configuración de .vscode/launch.json (depuración)

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Lanzar",
            "type": "cppdbg",
            "request": "lanzar",
            "program": "${workspaceFolder}/main",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "preLaunchTask": "compilar archivo C++",
            "setupCommands": [
                {
                    "description": "Habilitar impresión bonita para gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Establecer el sabor de desensamblado a Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}

Puedes ejecutar la depuración con F5 Se compilará automáticamente y se iniciará la depuración.


7. Resumen de compilación y ejecución

Acción Atajo de teclado
Construir (compilar) Ctrl + Shift + B
Ejecutar y depurar F5
Ejecutar terminal ./main (ejecutar directamente)

8. Consejos adicionales

  • El comando g++ -g main.cpp -o main compila con información de depuración.
  • Al agregar otro archivo .cpp, asegúrate de modificar el nombre del archivo en args.
  • Si hay varios archivos, se puede extender con Makefile o CMake.

Referencias

Nota del autor

Este entorno se puede replicar fácilmente en cualquier servidor personal, Raspberry Pi, VM de GCP, etc. basado en Linux. Cuando se integra con Python o módulos de IA en C++, esta estructura se convierte en una base muy poderosa.