Difference between revisions of "Compilación en Linux"
Jgvictores (talk | contribs) |
Jgvictores (talk | contribs) (Let's go in style) |
||
(13 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | == Tutorial 1: Hola, Mundo! == | ||
+ | |||
Vamos a hacer un "Hola, Mundo!" en C! (buscando por Google, etc se puede encontrar el origen de este nombre). Decimos que Linux, pero este ejemplo es muy orientado a Debian, Ubuntu y Mint. | Vamos a hacer un "Hola, Mundo!" en C! (buscando por Google, etc se puede encontrar el origen de este nombre). Decimos que Linux, pero este ejemplo es muy orientado a Debian, Ubuntu y Mint. | ||
− | Paso 1) Abrimos una [[Consola_de_Linux|consola]]. | + | Paso 1) Abrimos una [[Consola_de_Linux|consola de Linux]]. |
− | Paso 2) Desde la consola, creamos un fichero: | + | Paso 2) Desde la consola, creamos un fichero (usaremos el editor de texto ''gedit''): |
− | + | <syntaxhighlight lang="bash"> | |
+ | gedit main.c | ||
+ | </syntaxhighlight> | ||
− | Paso 3) Copiamos estas líneas al fichero: | + | Paso 3) Copiamos estas líneas al fichero (es código fuente c!!!): |
− | + | <syntaxhighlight lang="c"> | |
+ | #include <stdio.h> | ||
− | + | void main() | |
+ | { | ||
printf("Hola, Mundo!\n"); | printf("Hola, Mundo!\n"); | ||
− | + | } | |
+ | </syntaxhighlight> | ||
Paso 4) Pulsamos CTRL+s para guardar y CTRL+q para salir. | Paso 4) Pulsamos CTRL+s para guardar y CTRL+q para salir. | ||
Line 18: | Line 25: | ||
Paso 5) Ya de regreso en la terminal, instalamos el paquete básico de librerías estándar y compiladores: | Paso 5) Ya de regreso en la terminal, instalamos el paquete básico de librerías estándar y compiladores: | ||
− | + | <syntaxhighlight lang="bash"> | |
+ | sudo apt-get install build-essential | ||
+ | </syntaxhighlight> | ||
Paso 6) Compilamos el programa que hemos escrito: | Paso 6) Compilamos el programa que hemos escrito: | ||
− | + | <syntaxhighlight lang="bash"> | |
+ | gcc main.c | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Paso 7) Por defecto, el nombre del ''ejecutable'' (sinónimo de "programa") es '''a.out'''. Podemos ejecutar el programa: | ||
+ | |||
+ | <syntaxhighlight lang="bash"> | ||
+ | ./a.out | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | [nota] Ponemos '''./''' para indicarle al sistema operativo que el programa se encuentra en "esta" carpeta (se indica con el punto). | ||
+ | |||
+ | == ¡Tengo problemas! ¿Qué hago? == | ||
+ | |||
+ | * Quizás te pueda ayudar nuestro apartado de [[Errores_frecuentes_en_la_compilación|errores frecuentes en la compilación (ASROB)]]. | ||
+ | |||
+ | == ¿Ahora qué puedo hacer? == | ||
+ | |||
+ | * Una forma sofisticada de compilar es mediante un Makefile, que puede realizar llamadas a ''gcc'' de forma eficiente y concurrente. Sin embargo, no deja de ser una solución no multiplataforma. Por ello te invitamos a que descubras CMake (véase [[Tutorial_CMake|el tutorial de CMake (ASROB)]]), una solución multiplataforma que genera Makefiles, proyectos para Windows, etc. | ||
− | + | * Crea un programa más complejo y súbelo a un repositorio [[SVN]] o [[Git]]! |
Latest revision as of 19:21, 5 January 2020
Tutorial 1: Hola, Mundo!
Vamos a hacer un "Hola, Mundo!" en C! (buscando por Google, etc se puede encontrar el origen de este nombre). Decimos que Linux, pero este ejemplo es muy orientado a Debian, Ubuntu y Mint.
Paso 1) Abrimos una consola de Linux.
Paso 2) Desde la consola, creamos un fichero (usaremos el editor de texto gedit):
gedit main.c
Paso 3) Copiamos estas líneas al fichero (es código fuente c!!!):
#include <stdio.h>
void main()
{
printf("Hola, Mundo!\n");
}
Paso 4) Pulsamos CTRL+s para guardar y CTRL+q para salir.
Paso 5) Ya de regreso en la terminal, instalamos el paquete básico de librerías estándar y compiladores:
sudo apt-get install build-essential
Paso 6) Compilamos el programa que hemos escrito:
gcc main.c
Paso 7) Por defecto, el nombre del ejecutable (sinónimo de "programa") es a.out. Podemos ejecutar el programa:
./a.out
[nota] Ponemos ./ para indicarle al sistema operativo que el programa se encuentra en "esta" carpeta (se indica con el punto).
¡Tengo problemas! ¿Qué hago?
- Quizás te pueda ayudar nuestro apartado de errores frecuentes en la compilación (ASROB).
¿Ahora qué puedo hacer?
- Una forma sofisticada de compilar es mediante un Makefile, que puede realizar llamadas a gcc de forma eficiente y concurrente. Sin embargo, no deja de ser una solución no multiplataforma. Por ello te invitamos a que descubras CMake (véase el tutorial de CMake (ASROB)), una solución multiplataforma que genera Makefiles, proyectos para Windows, etc.