Paquetes binarios frente a fuente: ¿Cuál debería usar?

Los usuarios de Linux tienen dos formas principales de instalar programas: usar un paquete preconstruido o compilarlo usted mismo. Por lo general, elegimos un paquete, pero hay ocasiones en las que debe considerar construir desde la fuente.

Los usuarios de Linux tienen dos formas principales de instalar programas: usar un paquete preconstruido o compilarlo usted mismo.  Por lo general, elegimos un paquete, pero hay ocasiones en las que debe considerar construir desde la fuente.
Anuncio

Independientemente del administrador de paquetes ¿Qué administrador de paquetes de Linux (y Distro) es adecuado para usted? ¿Qué Linux Package Manager (y Distro) es adecuado para usted? Una diferencia clave entre las principales distribuciones de Linux es el administrador de paquetes; las diferencias son lo suficientemente fuertes como para influir en la elección de la distribución. Veamos cómo funcionan los diversos administradores de paquetes. Lea más que esté usando, tiene dos formas de instalar programas en Linux. Puede utilizar un paquete preconstruido o compilarlo usted mismo. En estos días, el primero suele ganar por defecto. Sin embargo, hay momentos en los que debes considerar la alternativa.

¿Qué son los paquetes binarios?

La instalación de programas en Linux suele ser bastante diferente a la instalación en Windows. En lugar de sacar a los instaladores del sitio web de un proveedor, los archivos se recuperan de un repositorio de programas, generalmente adaptados. Cómo personalizar el escritorio LTS de Ubuntu 16.04 Cómo personalizar el escritorio LTS de Ubuntu 16.04 ¿Enfermo del aspecto predeterminado de Ubuntu? ¿Es hora de personalizar Ubuntu de la manera que lo desees? ¡Con Unity Tweak Tool y algunos simples comandos de terminal, puedes hacer tu Unidad tuya! Lea más para su sistema operativo.

Los archivos para programas separados se almacenan en un formato de archivo. ¿Cuál es el mejor método de compresión de archivos? MakeUseOf Tests Zip, RAR y más ¿Cuál es el mejor método de compresión de archivos? Pruebas de MakeUseOf Zip, RAR y más La compresión de archivos es una tarea importante y común que los usuarios suelen hacer con sus computadoras. Reducir el tamaño de un archivo hace que sea más fácil enviarlo por correo electrónico o colocarlo en una unidad flash. También reduce el uso de ancho de banda y ... Leer más. Esto agrupa todo en un solo archivo para facilitar el acceso más adelante. Por ejemplo, Debian usa el formato DEB para almacenar sus programas. Estos paquetes se llaman paquetes binarios .

formato de paquete deb

La instalación requiere un programa especial para extraer estos archivos y ponerlos en su computadora. Es decir, su administrador de paquetes (por ejemplo, APT, Yum, etc.). También hace otras cosas útiles, como hacer un seguimiento de los archivos que ha instalado y administrar las actualizaciones de software.

¿De dónde vienen los paquetes?

Todo el software está escrito en líneas de texto llamadas código fuente. Están escritos en lenguajes de programación específicos. 6 Lenguajes de programación más fáciles de aprender para principiantes. 6 Lenguajes de programación más fáciles de aprender para principiantes. Aprender a programar consiste en encontrar el idioma correcto tanto como en el proceso de edificación. Aquí están los seis idiomas de programación más fáciles para principiantes. Lea más, como C o C ++. En general, sin embargo, no se puede agrupar en un archivo y llamarlo paquete. Estas líneas deben traducirse a un idioma que su computadora pueda entender y ejecutar.

Este proceso se llama compilar Cómo compilar e instalar los archivos TAR GZ y TAR BZ2 en Ubuntu Linux Cómo compilar e instalar los archivos TAR GZ y TAR BZ2 en Ubuntu Linux Leer más, el resultado final es crear binarios que su computadora puede ejecutar. Son estos binarios que se almacenan juntos dentro de un paquete, junto con otras cosas como los archivos de configuración ¿Qué son los archivos de configuración y cómo se pueden editar? ¿Qué son los archivos de configuración y cómo puedes editarlos? La gran mayoría de las aplicaciones de software se configuran a través de una interfaz de menú, pero algunas requieren que va más allá y edite un archivo de texto. ¿Pero cómo funcionan estos "archivos de configuración"? Lee mas .

¿Qué está instalando "desde la fuente"?

Compilar código fuente no es solo para hacer paquetes. De hecho, crear un archivo así no es necesario. Básicamente, instalar un programa "desde la fuente" significa instalar algo sin usar un administrador de paquetes . En su lugar, compila el código fuente y copia los binarios en su computadora.

La mayoría de las veces, puede descargar el código fuente de un proyecto de servicios de hosting como GitHub o BitBucket Love GitHub? 4 razones por las que debe alojar su código en BitBucket Love GitHub? 4 razones por las que debe alojar su código en BitBucket Tiene que pensar dónde quiere almacenar su código. Es probable que hayas oído hablar de GitHub. Eso no es sorprendente. GitHub es utilizado por individuos y empresas para alojar código, colaborar en documentación ... Leer más. Los programas más grandes incluso pueden alojarlo en un sitio web personal. El código generalmente se comprimirá en un formato de archivo (también conocido como paquete fuente ).

árbol de paquete fuente

Un conjunto especial de herramientas ayuda a automatizar el proceso de construcción. En los escritorios de Linux, esto generalmente viene en forma de línea de comando. Una guía rápida para comenzar con la línea de comandos de Linux Una guía rápida para comenzar con la línea de comandos de Linux Puede hacer muchas cosas increíbles con comandos en Linux y es realmente no es difícil de aprender Leer más programa llamado make . El código fuente escrito en diferentes idiomas necesita compiladores y comandos específicos para convertirlos en binarios. El programa make automatiza Cómo programar tareas en Linux con Cron y Crontab Cómo programar tareas en Linux con Cron y Crontab La capacidad de automatizar tareas es una de esas tecnologías futuristas que ya está aquí. Todos los usuarios de Linux pueden beneficiarse del sistema de programación y las tareas de los usuarios, gracias a cron, un servicio en segundo plano fácil de usar. Lea más sobre este proceso.

emacs makefile

Para hacer esto, los programas proporcionan make con un archivo MAKE que le dice qué hacer y compilar. En estos días, generalmente es generado automáticamente por un software especial como CMake. Aquí es donde entra el usuario. Porque desde aquí, pueden especificar exactamente qué características les gustaría compilar en su propio software.

Demostración rápida

Por ejemplo, el siguiente comando genera un archivo de configuración para Calligra Office Suite Calligra vs. LibreOffice: ¿Cuál es el conjunto de aplicaciones Linux más productivo? Calligra vs. LibreOffice: ¿Cuál es el conjunto de aplicaciones Linux más productivo? Lea más usando CMake. El archivo creado le dice al programa make que solo compile el componente Writer de Calligra.

cmake -DPRODUCTSET=WORDS -DCMAKE_INSTALL_PREFIX=$HOME/kde/inst5 $HOME/kde/src/calligra 

Una vez hecho esto, todo lo que una persona tiene que hacer es ejecutar la herramienta make para compilar y copiar los resultados en su computadora. Esto se hace de la siguiente manera:

 make make install 

Si bien este es el patrón general para compilar programas, existen muchas otras maneras de instalar paquetes fuente. Gentoo Linux Gentoo: una distribución de Linux donde compila su propio software optimizado Gentoo: una distribución de Linux donde compila su propio software optimizado La gran cantidad de formas diferentes en que se puede ejecutar Linux es asombrosa, ya que hay muchas opciones para todos. . Si bien hay muchas distribuciones basadas en el .deb ... Read More, por ejemplo, tiene una forma integrada de manejar esto, lo que hace que el proceso sea mucho más rápido y fácil. Junto con esto, crear paquetes binarios requiere algunos pasos más que los comandos anteriores.

Beneficios del uso de paquetes binarios

Si está utilizando Linux, es probable que los programas que ha instalado estén precompilados. En estos días, es mucho más común que usar paquetes fuente. Hay algunas razones por las cuales ese es el caso.

Más fácil de administrar

Los paquetes binarios contienen mucho más que solo archivos de instalación compilados. También almacenan información que facilita a su administrador de paquetes su guía de repositorios y gestión de paquetes de Ubuntu Su guía para repositorios de Ubuntu y gestión de paquetes Lea más para realizar un seguimiento de todos sus programas. Por ejemplo, archivos DEB (el formato del paquete para Debian Debian: disfrute de una de las distribuciones de Linux más confiables y estables Debian: disfrute de una de las distribuciones de Linux más estables y confiables Hay muchos usuarios de Linux que usan distribuciones como Ubuntu o una de las muchas distribuciones basadas en Ubuntu, incluida Linux Mint. Sin embargo, no importa lo que esté usando, ... Leer más y los derivados de Debian) también contienen información importante, como qué otro software necesita ejecutar el programa, y su versión actual.

formato de paquete deb

Esto hace que los paquetes sean mucho más fáciles de instalar. No necesita preocuparse por qué otros archivos necesita instalar para ejecutar un programa, por ejemplo. Como su administrador de paquetes puede leer esa información del paquete en sí, maneja todo eso automáticamente.

Compare esto con la instalación de programas desde la fuente. A menos que compile el código en un paquete binario propio, estará a cargo de administrar ese software. Debería tener en cuenta qué otros programas necesita para que funcione, e instalarlos usted mismo.

Estabilidad mejorada

Los repositorios de paquetes tienden a probar sus binarios en busca de problemas, y hacen todo lo posible para solucionarlos cuando aparecen. Esto puede conducir a una mejor estabilidad de los programas, algo que una persona que instaló desde la fuente podría perderse.

Por ejemplo, hay una serie de paquetes en los repositorios de Debian que tienen correcciones aplicadas. Esto incluso puede incluir programas grandes como navegadores web. ¿Está utilizando el mejor navegador web para Linux en 2016? ¿Está utilizando el mejor navegador web para Linux en 2016? Usar el navegador "incorrecto" puede provocar muchos dolores de cabeza innecesarios, productividad desperdiciada e incluso pérdida de datos. Entonces, ¿qué navegador es el mejor para su computadora con Linux? Vamos a averiguar. Lee mas !

parches de Debian

Junto con esto, los paquetes generalmente deben cumplir con un estricto conjunto de reglas para ayudar a garantizar que se ejecutarán en su sistema. Tanto Debian como Ubuntu tienen un manual de políticas, por ejemplo, al igual que muchos otros sistemas operativos Linux.

Algunos programas también se basan en diferentes versiones de la misma dependencia de software para ejecutar. Los repositorios de paquetes hacen todo lo posible para resolver estos conflictos, por lo que no debe preocuparse por esto.

Beneficios de compilar paquetes de origen

Instalar programas desde la fuente no es algo que todos tengan que hacer. De hecho, es mejor si te quedas con paquetes binarios. Aun así, todavía existen algunas ventajas al utilizar esta forma de instalación de programas un poco más complicada.

Último software

Una desventaja de hacer que los programas sean más confiables es que toma tiempo mejorar y corregir. Como resultado, esto puede llevarlo a utilizar versiones anteriores de software. Para las personas que desean lo último y lo mejor de 5 Sistemas operativos Linux que ofrecen actualizaciones de borde sangrante 5 Sistemas operativos Linux que ofrecen actualizaciones sangrantes Un sistema que siempre está mejorando y actualizando tiene sus ventajas, por ejemplo, ganancias en velocidad y seguridad. Si está listo para probar Linux de punta, aquí hay algunos sistemas operativos a considerar. Leer más, incluso podrían preferir un poco de inestabilidad a cambio de eso.

Si bien existen sistemas operativos Linux que satisfacen esta necesidad sin compilar programas, tienen algunos inconvenientes. Por ejemplo, el software que no libera con frecuencia las versiones de paquetes configurados es más difícil de mantener actualizado Por qué siempre debe mantener su instalación de Ubuntu actualizada [Linux] Por qué siempre debe mantener su instalación de Ubuntu actualizada [Linux] Lea más en un repositorio, que instalar desde la fuente.

Esto se debe a que los paquetes binarios generalmente se crean a partir de versiones oficiales de programas. Como tal, los cambios entre estas versiones generalmente no se tienen en cuenta. Al compilar su propio software desde la fuente, puede beneficiarse inmediatamente de estos cambios.

También es posible que su sistema operativo Linux no tenga el software que desea pre-hecho para usted. Si ese es el caso, instalarlo desde la fuente es su única opción.

Escoge y elige

Otro beneficio del uso de paquetes fuente es que obtiene más control sobre los programas que instala. Cuando instala desde un repositorio binario, tiene restricciones en cuanto a la manera de personalizar sus paquetes.

Por ejemplo, fíjate en FFmpeg, el convertidor de audio y video basado en la línea de comandos. 10 Excelentes aplicaciones para convertir archivos de audio y video en Linux 10 Excelentes aplicaciones para convertir archivos de audio y video en Linux Leer más. Por defecto, viene con una gran cantidad de características, algunas de las cuales es posible que nunca toque. Por ejemplo, el soporte de audio JACK está disponible en FFmpeg, aunque este software se usa generalmente en entornos de producción. 6 Linux Distros Diseñados para Artistas, Músicos y Editores. 6 Linux Distros Diseñados para Artistas, Músicos y Editores. Lea más solamente.

características ffmpeg

La compilación de FFmpeg le permite eliminar las cosas que no desea, dejándolas más ligeras y adaptadas a sus necesidades. Y lo mismo se aplica a otros programas de peso pesado.

Cuando los recursos son escasos, la eliminación de características puede ser una excelente manera de aligerar la carga. No es de extrañar que Chrome OS El Chrome OS Challenge: un nuevo día de usuario en un Chromebook El Chrome OS Challenge: un nuevo día de usuario en un Chromebook ¿Qué son los Chromebook para alguien que está acostumbrado a una configuración de Windows o Mac? Como recién llegado al Sistema operativo Chrome, estoy aquí para decírtelo. Leer más, que se encuentra en muchas computadoras de gama baja, se basa en Gentoo Linux. Gentoo, basado en la fuente, compila una gran cantidad de su software, lo que hace que estos sistemas sean mucho más ligeros.

¿Por qué no instalar con ambos?

Si bien es probable que no desee compilar paquetes a diario, es algo útil a tener en cuenta. Si alguna vez no encuentra los repositorios de software lo suficientemente buenos, recuerde que hay otra forma más antigua de instalar los elementos.

¿Alguna vez has tenido que compilar software? ¿Por qué?

Crédito de la imagen: Andrii Symonenko a través de Shutterstock.com

In this article