Compilación desde el código fuente y uso de Snap/Flatpak
Vaya más allá del gestor de paquetes del sistema: compile software desde el código fuente cuando no exista un paquete y utilice formatos de paquetes universales como Snap y Flatpak para instalar aplicaciones modernas independientemente de los repositorios de su distribución.
Compilación desde el código fuente y uso de Snap/Flatpak es una lección gratuita de Linux Server Deployment & SSH Mastery en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Linux Server Deployment & SSH Mastery, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Linux Server Deployment & SSH Mastery incluye 4 lecciones en total.
Cuando el gestor de paquetes no es suficiente
APT y YUM cubren la mayoría de las necesidades, pero a veces una herramienta no está disponible como paquete, es demasiado antigua en los repositorios o necesita una versión específica. En esos casos tiene dos opciones:
- Compilar el software desde el código fuente
- Usar un formato de paquete universal, como Snap o Flatpak
Esta lección cubre ambas opciones.
Preparación de las herramientas de compilación
Para compilar se necesita una cadena de herramientas: un compilador, make y bibliotecas de desarrollo. En Debian/Ubuntu, el metapaquete build-essential incorpora los componentes básicos.
sudo apt install build-essential
# RHEL/Fedora:
sudo dnf groupinstall 'Development Tools'Obtención del código fuente
El código fuente suele distribuirse como un tarball comprimido o un repositorio de git. Descárguelo y descomprímalo; después, acceda al directorio.
wget https://example.com/tool-1.2.tar.gz
tar -xzf tool-1.2.tar.gz
cd tool-1.2Ciclo configure / make / install
El proceso de compilación clásico de GNU consta de tres pasos:
./configure— comprueba el sistema y prepara la compilaciónmake— compila el códigosudo make install— copia los binarios en su ubicación
Este patrón tiene décadas de antigüedad y todavía es habitual.
./configure
make
sudo make installElección del prefijo de instalación
De forma predeterminada, el software se instala en /usr/local. Puede cambiarlo con --prefix para mantenerlo aislado, lo que facilita la limpieza posterior.
Instalarlo en su directorio personal evita necesitar privilegios de root.
./configure --prefix=/opt/tool
make
sudo make installGestión de dependencias faltantes
Si ./configure se detiene indicando que falta una biblioteca, instale el paquete -dev correspondiente. Los paquetes de desarrollo proporcionan los encabezados contra los que el código fuente debe compilarse.
sudo apt install libssl-dev zlib1g-dev
./configureDesinstalación de compilaciones desde el código fuente
La desventaja de instalar desde el código fuente es que no hay una desinstalación automática. Si el proyecto lo admite, ejecute make uninstall desde el directorio de compilación. De lo contrario, un --prefix aislado le permite simplemente eliminar la carpeta.
sudo make uninstall
# or, if you used --prefix=/opt/tool:
sudo rm -rf /opt/toolPaquetes universales: Snap
Los paquetes Snap incluyen una aplicación y sus dependencias, por lo que se ejecutan en cualquier distribución que tenga snapd. Se actualizan automáticamente y se ejecutan en un entorno aislado.
sudo snap install htop
snap list
sudo snap remove htopPaquetes universales: Flatpak
Flatpak es otro formato universal, popular para aplicaciones de escritorio y distribuido mediante repositorios remotos como Flathub. Añada el repositorio remoto una vez y, después, instale la aplicación mediante su ID.
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gimp.GIMP
flatpak run org.gimp.GIMPElección del método adecuado
Elija el método que mejor se adapte a sus necesidades:
- APT/YUM — opción predeterminada, mejor integración y actualizaciones automáticas
- Snap/Flatpak — versiones más recientes, compatibilidad entre distribuciones y entorno aislado
- Source — último recurso para compilaciones personalizadas o software sin paquete
Prefiera los paquetes; compile desde el código fuente solo cuando sea necesario.
Buenas prácticas
Instale de forma segura fuera del gestor de paquetes:
- Instale siempre las dependencias de compilación antes de configurar
- Use un
--prefixlimpio para poder eliminar las compilaciones desde el código fuente posteriormente - Verifique las sumas de comprobación o firmas de las descargas
- Prefiera Snap/Flatpak al código fuente cuando exista un paquete mantenido
Comprobación rápida
Compruebe sus conocimientos sobre la instalación.
Repaso
Ahora puede instalar software más allá de los repositorios estándar:
- Desde el código fuente:
./configure→make→make install, con--prefixpara aislar la instalación - Snap:
snap installpara aplicaciones independientes que se actualizan automáticamente - Flatpak: remotos de Flathub e identificadores de aplicaciones
Recurra a estas opciones solo cuando APT/YUM no puedan proporcionar lo que necesita.
Preguntas frecuentes
¿La lección «Compilación desde el código fuente y uso de Snap/Flatpak» es gratis?
Sí — el texto completo de «Compilación desde el código fuente y uso de Snap/Flatpak» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Linux Server Deployment & SSH Mastery, actualiza a CoddyKit PRO. El curso de Linux Server Deployment & SSH Mastery incluye 4 lecciones en total.
¿Qué aprenderé en «Compilación desde el código fuente y uso de Snap/Flatpak»?
Vaya más allá del gestor de paquetes del sistema: compile software desde el código fuente cuando no exista un paquete y utilice formatos de paquetes universales como Snap y Flatpak para instalar apli… Practicas Linux Server Deployment & SSH Mastery con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Linux Server Deployment & SSH Mastery?
No se requiere experiencia previa. Linux Server Deployment & SSH Mastery en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.
¿Cuánto tiempo toma la lección «Compilación desde el código fuente y uso de Snap/Flatpak»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Linux Server Deployment & SSH Mastery?
Sí. Cada lección de Linux Server Deployment & SSH Mastery incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Gestores de paquetes APT y YUM
- Instalación y actualización de software
- Gestión de repositorios de software
- Compilación desde el código fuente y uso de Snap/Flatpak