Compilar C++ en G++ Linux en terminal – lección-1

Para Compilar C++ en G++ Linux en terminal para Ubuntu 16.04 se requiere instalar las bibliotecas, programas y compiladores necesarios para el S.O. (Sistema Operativo). El programa en C o C++ se puede crear en cualquier editor de texto y para compilar se usa la línea de comandos. En este tutorial veremos como crear un programa desde cero para compilarlo y correrlo desde la línea de comandos.

El primer paso es instalar las herramientas necesarias. Para esto ejecutaremos en una terminal los siguientes comandos linux.

  1. sudo apt-get -y update . Este comando permitirá actualizar las bibliotecas en los repositorios del S.O.
  2. sudo apt-get -y upgrade . Actualizar los programas a su última versión.
  3. sudo apt-get install build-essential . Instalará el compilador GCC y otras herramientas de desarrollo.

Nota. Los primeros dos comandos no son necesarios, pero si se recomienda tener actualizado Ubuntu. 

Como crear un programa en Linux

Para crear un programa en Linux puede usarse cualquier editor de texto. Mi recomendación es usar gedit.  Por ejemplo existen entre otras opciones:

  • nano  . Es un programa que permite crear archivos de texto desde la terminal. La sintaxis del programa nano es:
    • nano nombrePrograma.cpp  este creará el archivo en ubicación de la terminal. Editamos el archivo en la misma y para guardar los cambios precionamos dos teclas, ctrl y X, y escribmos despues Y para indicarle que si queremos sobre-escribir los cambios. Esta opción sólo aparecerá si se modifico o agrego texto al archivo.
  • gedit nombrePrograma.cpp gedit es un programa muy parecido a notePad de Windows. Me parece que por default no esta instalado, para instalarl gedit se usaría la siguiente instrucción:
    • sudo apt-get install gedit

Ejemplo-1 crear un programa que imprima texto en la terminal

El siguiente programa permite escribir un conjunto de caracteres en la terminal. Primero haremos el programa en un editor de texto, se compilara y finalmente se ejecutara en una terminal.

Paso # 1 – Crear el archivo holaMundo.cpp

Comenzaremos a crear nuestro programa mediante la línea de comandos. Primero usare el editor nano. Escribiremos el siguiente programa:

Para dicho propósito se ejecutará el siguiente comando en una terminal:

nano holaMundo.cpp

Posteriormente escribamos el código en la terminal y al finalizar seleccionamos las teclas CTRL y X y escribimos «y» para guardar el programa.

Hola Mundo en c++ con el compilador G++ en terminal con Ubuntu

Paso # 2 – Compilar un programa en C++ con el compilador G++ en la terminal en Linux

El siguiente paso sería compilar el programa que acabamos de hacer. Para realizar esta acción se utilizará el compilador g++ que es un compilador de código abierto y de uso libre para el lenguaje c++. Este compilador se instalo con el comando 3 de la parte inicial de este tutorial. Entonces para compilar nuestro programa ejecutaremos el siguiente comando en la terminal donde se encuentra el programa.

g++ -o ejecutable holaMundo.cpp

Si escribimos el código de formar correcta, no aparecerá ningún mensaje. De lo contrario si el código tiene errores, se mostrarán en la terminal. Al ejecutar la instrucción anterior, se creará un archivo con el nombre «ejecutable» este será el archivo que representa al programa que acabamos de crear. Por lo tanto el archivo holaMundo.cpp se conoce como código fuente. El resultado al correr este programa serian las palabras «Hola mundo». Dado que no se le indico que imprimiera un salto de línea, la línea de la terminal aparecerá inmediatamente después de dicho texto.

El comando que compila al programa esta compuesto de 4 elementos:

  • g++ es el programa compilador.
  • -o es una banderá que le indica al compilador que el siguiente elemento es el archivo ejecutable y como se llamara.
  • ejecutable es el nombre del archivo que se ejecutara.
  • holaMundo.cpp es el nombre del código fuente.

 

Compilar C++ en G++ Linux

Paso # 3 – Ejecutar un programa en terminal con g++

Para ejecutar el programa anterior, se realizará con la siguiente instrucción.

 

./ejecutable

Nota1. En algunos casos cuando se usan determinadas funciones, puede marcar un error por la compatibilidad con la versión de g++. En este casó se recomienda usar la siguiente instrucción.

g++ -std=c++11 -o ejecutable holaMundo.cpp

 

Ejemplo-2 crear un programa que incluya una biblioteca

Para el siguiente ejemplo, se creará dos códigos fuentes. El código fuente principal, es aquel que tiene a la función main. Entonces el segundo código contendrá a modo de biblioteca una función que permite sumar dos números enteros. Después usaremos esta biblioteca en el código principal y se compilarán ambos archivos para crear un archivo ejecutable.

Programa c++ con biblioteca y g++ en la terminal de Linux

Paso # 1 – Crear los tres archivos y agregar la siguiente información a cada uno.

Principal.cpp

 

biblioteca1.cpp

biblioteca1.h

 

Para compilar el programa principal y poder crear un archivo ejecutable se utilizará la siguiente instrucción.

g++ -Wall principal.cpp biblioteca1.cpp -o salida

A diferencia del comando del ejemplo-1, este comando incluye la bandera -Wall esta bandera habilita los mensajes de advertencias en el código. Si escribimos todo como en los códigos anteriores, esta bandera no mostrar ningún mensaje para este ejemplo. Al ejecutar el programa con la siguiente instrucción, aparecerá un resultado como en el de la siguiente figura.

./salida

Compilar programa en C++ con g++ y biblioteca adicional

 

 

Un ejemplo más avanzado sería compilar usando bibliotecas adicionales, como las de opencv. En el siguiente tutorial se indica como abrir la camara web con opencv desde la terminal.

Por ultimo, si te gusto este tutorial, favor de dejar un comentario, lo agradeceremos mucho. Por lo tanto te recomendamos visitar nuestra pagina principal para que veas los nuevos tutoriales en HETPRO. Tenemos tutoriales de ArduinoPCBsprogramación y muchos más. En conclusión, esta obra está bajo una Licencia Creative Commons Atribución-NoComercial-SinDerivar 4.0 Internacional.

Autor: Dr: Rubén Estrada Marmolejo, Profesor de la Universidad de Guadalajara, Jalisco, México.

10 comentarios en «Compilar C++ en G++ Linux en terminal – lección-1»

  1. Hola! estoy intentando compilar un programa con varios archivos que agrupo en un make file.
    Desde el terminal de Debian9 (GNU). Como lo tendría que hacer?

    Gracias

  2. En el comando «sudo apt-get build-essential» te falto el install, que escrito correctamente seria «sudo apt-get install build-essential», bueno por lo menos en Kali Linux es necesario para instalar un paquete desde la consola nose si en otro no sea necesario, solo es una corrección por si es que se te paso. Y por cierto muy buen post.

  3. Aprovechando el confinamiento para aprender un poco de Linux me encontré con este muy buen post, saludos también desde la Perla tapatía. 😀

  4. Hola Fernando, verifique que en tu carpeta de compilacion existan los archivos y que contenga la información que presentamos en el tutorial, saludos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *