Buildroot es un conjunto de Makefiles y parches que simplifica y automatiza el proceso de creación de un entorno Linux completo y de arranque para un sistema integrado , mientras utiliza la compilación cruzada para permitir la creación de múltiples plataformas de destino en un único sistema de desarrollo basado en Linux. Buildroot puede construir automáticamente la cadena de herramientas de compilación cruzada requerida , crear un sistema de archivos raíz , compilar una imagen del kernel de Linux y generar un cargador de arranquepara el sistema integrado de destino, o puede realizar cualquier combinación independiente de estos pasos. Por ejemplo, una cadena de herramientas de compilación cruzada ya instalada se puede utilizar de forma independiente, mientras que Buildroot solo crea el sistema de archivos raíz. [3] [4] [5] : 2–3,10–12 [6]
Desarrollador (es) | Peter Korsgaard y otros |
---|---|
Versión inicial | 12 de enero de 2005 [1] |
Lanzamiento estable | 2020.08.2 [2] / 16 de noviembre de 2020 |
Repositorio | |
Escrito en | Hacer , cáscara y C |
Sistema operativo | Linux |
Plataforma | Linux integrado |
Tamaño | 6,2 MB |
Tipo | Automatización de construcción |
Licencia | GNU GPL versión 2 o posterior |
Sitio web | www |
Buildroot está diseñado principalmente para usarse con sistemas pequeños o integrados basados en varias arquitecturas de computadora y arquitecturas de conjuntos de instrucciones (ISA), incluidos x86 , ARM , MIPS y PowerPC . [5] : 2 Se admiten numerosas arquitecturas y sus variantes; Buildroot también viene con configuraciones predeterminadas para varias placas integradas disponibles en el mercado, como Cubieboard , Raspberry Pi y SheevaPlug . [7] [8] : 25 Varios proyectos y productos de terceros utilizan Buildroot como base para sus sistemas de compilación, incluido el proyecto OpenWrt que crea un sistema operativo integrado y firmware para el equipo en las instalaciones del cliente (CPE) utilizado por el Servicio de banda ancha de Google Fiber . [8] : 15 [9]
Se admiten varias bibliotecas estándar de C como parte de la cadena de herramientas, incluida la biblioteca GNU C , uClibc y musl , así como las bibliotecas estándar de C que pertenecen a varios entornos de desarrollo preconfigurados, como los proporcionados por Linaro . El sistema de configuración de compilación de Buildroot utiliza internamente Kconfig , que proporciona características como una interfaz basada en menús, manejo de dependencias y ayuda contextual ; Kconfig también es utilizado por el kernel de Linux para su configuración a nivel de fuente. Buildroot está organizado en torno a numerosos paquetes descargados automáticamente , que contienen el código fuente de varias aplicaciones de espacio de usuario , utilidades del sistema y bibliotecas . Las imágenes del sistema de archivos raíz, que son los resultados finales, se pueden crear utilizando varios sistemas de archivos , incluidos cramfs , JFFS2 , romfs , SquashFS y UBIFS . [4] [8] : 6–7,18 [10]
Buildroot es un software gratuito y de código abierto , mantenido por Peter Korsgaard y con licencia de la versión 2 o posterior de la GNU General Public License (GPL). [4] El proyecto se inició en 2001, con la intención inicial de servir como banco de pruebas para uClibc. Los nuevos lanzamientos están disponibles cada tres meses. [5] : 5 [8] : 4
Ver también
- BitBake : una herramienta de compilación similar a la de un modelo que se centra en paquetes de compilación cruzada y distribuciones de Linux integradas
- BusyBox : un proyecto de software que proporciona varias herramientas Unix reducidas en un solo archivo ejecutable
- Distribución de Linux : un sistema operativo creado como una colección de software basado en el kernel de Linux y, a menudo, un sistema de administración de paquetes.
- OpenEmbedded : un marco de software para crear distribuciones de Linux adaptadas a dispositivos integrados
- uClibc : una pequeña biblioteca estándar de C destinada a sistemas integrados basados en Linux
- Proyecto Yocto : un grupo de trabajo de la Fundación Linux que se centra en distribuciones de Linux integradas independientes de la arquitectura
Referencias
- ^ "Descargas de Buildroot antiguo (índice de / descargas / antiguo)" . buildroot.org . Consultado el 16 de agosto de 2015 .
- ^ "Buildroot 2020.08.2 lanzado" . busybox.net . 16 de noviembre de 2020.
- ^ Alexander Sirotkin (31 de agosto de 2011). "Roll Your Own Embedded Linux System con Buildroot" . Diario de Linux . Consultado el 18 de diciembre de 2014 .
- ^ a b c "Buildroot: Facilitando Linux embebido" . buildroot.org . Archivado desde el original el 18 de diciembre de 2014 . Consultado el 18 de diciembre de 2014 .
- ^ a b c "El manual de usuario de Buildroot" (PDF) . buildroot.org . 1 de diciembre de 2014 . Consultado el 18 de diciembre de 2014 .
- ^ Tom Parkin (27 de abril de 2010). "Herramientas y distribuciones para el desarrollo de Linux embebido" . LWN.net . Consultado el 16 de agosto de 2015 .
- ^ "Registro de cambios de Buildroot (archivo CAMBIOS)" . git.buildroot.net . 1 de diciembre de 2014 . Consultado el 18 de diciembre de 2014 .
- ^ a b c d Peter Korsgaard (26 de octubre de 2013). "Buildroot: ¿Qué hay de nuevo?" (PDF) . elinux.org . Consultado el 18 de diciembre de 2014 .
- ^ "OpenWrt Buildroot - Acerca de" . openwrt.org . 6 de diciembre de 2014 . Consultado el 18 de diciembre de 2014 .
- ^ "Linux4SAM: BuildRoot" . at91.com . 15 de julio de 2013 . Consultado el 16 de agosto de 2015 .
enlaces externos
- Página web oficial
- Buildroot: ¿Qué hay de nuevo? , Embedded Linux Conference 2014, por Thomas Petazzoni
- Buildroot: una inmersión profunda en el núcleo , Embedded Linux Conference Europe 2014, por Thomas Petazzoni
- Decidir entre Buildroot y Yocto , LWN.net , 6 de abril de 2016, por Nathan Willis