¿Qué es compilar en Linux y por qué te puede ser útil aunque no seas programador?

¿Qué es compilar en Linux
¿Qué es compilar en LinuxGenerada con IA
Noticia
Añádenos en Google

Elígenos como tu fuente preferida en Google.

Si has empezado con Linux, seguro que te ha aparecido el concepto de compilar. Sin embargo, tranquilidad porque, auque te interesa saber qué es, no es algo que vayas a hacer siempre. 

Cuando empiezas a usar Linux, tarde o temprano aparecen palabras que al principio suenan casi a chino. Una de ellas es compilar. Puede que veas este concepto en tutoriales, en páginas de GitHub y en las instrucciones para instalar algunos programas.

Porque, lo cierto es que instalar un programa normalmente es muy sencillo. En Windows descargas un archivo, haces doble clic y sigues los pasos. 

En Linux también puedes instalar aplicaciones de la misma forma. Pero de vez en cuando te encuentras con un programa que no está preparado para instalarlo así y aparece esa palabra.

Compilar puede sonar mucho más complicado de lo que realmente es, pero la idea base es muy sencilla: tienes las instrucciones con las que se ha creado un programa y necesitas convertirlas en algo que tu ordenador pueda ejecutar.

¿Qué es compilar en Linux?

Compilar en Linux es, de forma simple, convertir el código de un programa en algo que el ordenador pueda ejecutar.

Imagina que un desarrollador crea un programa. Para hacerlo, escribe código, instrucciones, utilizando un lenguaje de programación como C o C++. Ese conjunto de instrucciones se denomina código fuente.

El problema es que tú puedes leer ese código y entender, con los conocimientos necesarios, qué está intentando hacer, pero el procesador de tu ordenador no puede coger ese texto y ejecutarlo directamente. Aquí entra en juego el compilador.

Hablamos de una herramienta que se encarga de coger ese código que ha escrito el desarrollador y convertirlo en instrucciones que el ordenador pueda utilizar.

Es un poco como si tuvieras una receta escrita para una persona y necesitaras convertirla en instrucciones que pudiera seguir directamente una máquina. El compilador hace ese trabajo de traducción.

En Linux hay diferentes compiladores. Uno de los más conocidos es GCC, que significa GNU Compiler Collection. Es probablemente la herramienta más usada para compilar programas escritos en C y C++, entre otros lenguajes.

Pero es importante que sepas que compilar no significa que tengas que hacerlo cada vez que instalas un programa en Linux. De hecho, lo normal es que no tengas que hacerlo.

Cuando instalas una aplicación desde los repositorios de Ubuntu, Debian, Fedora o cualquier otra distribución, normalmente estás descargando una versión que ya ha sido preparada y compilada. Alguien ha hecho ese trabajo antes que tú.

El problema viene cuando quieres instalar un proyecto que no tiene una versión preparada para tu sistema. Ahí puede que te toque descargar el código fuente y crear el programa tú mismo.

¿Qué diferencia hay entre el código fuente y el programa que utilizas?

Para entender bien de qué estamos hablando, hay que separar lo que es el código fuente del programa en sí. Como antes se ha comentado, el código fuente es lo que escribe el desarrollador para crear el programa. La versión final es el programa.

Entre una cosa y otra tiene que ocurrir el proceso de compilación. Piensa, por ejemplo, en una app que quieres instalar en Linux. El desarrollador ha publicado su código en GitHub para que cualquiera pueda verlo. Tú puedes descargarlo, pero eso no significa que ya tengas la aplicación lista para abrirla.

El compilador coge esos archivos, los procesa y crea los archivos que necesita el ordenador para ejecutar el programa. Y aquí pueden aparecer otros términos que puede que hayas visto alguna vez: dependencias, Make, CMake o Meson.

De forma simple, todas ellas son herramientas que ayudan a preparar y organizar todo lo que se necesita para crear un programa. Porque una aplicación no suele depender de un único archivo. Y si solo falta una, la compilación no va a funcionar.

¿Por qué el concepto de compilar se asocia a Linux?

Linux nació y creció alrededor de una idea en la que el código y la posibilidad de cambiar a tu gusto el software tienen un papel vital. Por eso es normal encontrarse con proyectos que dan su código fuente de forma pública.

Y no solo se pueden compilar aplicaciones. También puedes compilar el propio kernel de Linux, que es el núcleo del sistema operativo y la parte que se encarga de comunicarse con el hardware. Esto permite crear otras versiones.

Pero, de nuevo, no necesitas hacer esto para utilizar Linux. Cuando instalas Ubuntu, Fedora, Debian o cualquier otra distribución, ya estás utilizando un sistema preparado. El kernel que viene con ella ya ha sido compilado y configurado. Tú simplemente lo instalas.

Ver sus artículos

Carolina González

Redactora

Carolina González, redactora de actualidad, reportajes a fondo, análisis de todo tipo de productos y vídeos para el canal de Youtube.