Scratchbox 2 (a menudo abreviado como " sb2 " o " sbox2 ") es un conjunto de herramientas de compilación cruzada diseñado para facilitar el desarrollo de aplicaciones Linux embebidas . También proporciona un conjunto completo de herramientas para integrar y compilar de forma cruzada una distribución Linux completa .
Predecesor
Scratchbox era un kit de herramientas para el desarrollo de aplicaciones integradas en Linux que también proporcionaba soporte para la compilación cruzada entre distribuciones de Linux.
El proyecto fue desarrollado inicialmente por Movial y patrocinado por Nokia . Estaba licenciado bajo la Licencia Pública General de GNU ( GPL ).
Scratchbox fue diseñado para la plataforma de desarrollo Maemo (tabletas de Internet Nokia 770 , N800 y N810 , y teléfonos Nokia N900 y N9 ) y era compatible con la arquitectura ARM y x86 . Las arquitecturas PowerPC y MIPS funcionaban a nivel experimental.
Descripción funcional
En el mundo Linux, al compilar software , muchos parámetros se detectan automáticamente en el sistema anfitrión (como las bibliotecas instaladas y la configuración del sistema), por ejemplo, mediante los scripts de Autotools . Cuando se desea compilar software para un sistema embebido mediante compilación cruzada, la mayoría de los parámetros detectados automáticamente son incorrectos: es decir, la configuración del sistema anfitrión no es la misma que la del sistema embebido , de ahí el nombre de compilación cruzada../configure
Sin Scratchbox 2, hay que configurar manualmente muchos parámetros y "manipular" el "proceso de configuración" para generar código ejecutable que funcione para el dispositivo integrado.
Scratchbox 2 permite configurar un entorno "virtual" que engañará a Autotools y otros ejecutables haciéndoles creer que se están ejecutando directamente en el dispositivo integrado con su configuración.
Además, Scratchbox 2 proporciona una técnica llamada "transparencia de CPU" que va más allá: con la "transparencia de CPU", los ejecutables creados para la CPU del host o para la CPU de destino pueden ejecutarse directamente en el host, y sb2 se encarga de emular una arquitectura de CPU diferente si es necesario para ejecutar componentes de software compilados para la CPU de destino. Por lo tanto, un proceso de compilación puede combinar programas creados para diferentes arquitecturas de CPU. Esto es especialmente útil cuando un proceso de compilación requiere compilar primero un componente de software como dependencia de compilación para compilar otro componente de software: por ejemplo, un "Lexer" debe compilarse primero para generar código para otro componente de software con él.
Repositorios Git históricos de Scratchbox 2
BinChengfei/scratchbox2En GitHub se proporcionó una copia inalterada del antiguo repositorio Git de Scratchbox 2 en Gitorious , cuya última etiqueta Git data del 5 de septiembre de 2012.2.3.90lbt/scratchbox2(hasta la etiquetapkg-mer-2.3.90-4del 25-04-2013) ymer-packages/scratchbox2(hasta la etiqueta2.3.90-git2del 05-03-2014), ambos en GitHub, muestran estados intermedios antes de la fusión de Nemo / Mer , cuando el árbol de código fuente activo de Scratchbox 2 se movió al ahora disueltogit.merproject.org.- La continuación del antiguo repositorio de código fuente
git.merproject.org/mer-core/scratchbox2se encuentrasailfishos/scratchbox2en GitHub, que contiene todo el historial de confirmaciones y las etiquetas Git de todos los repositorios Git mencionados anteriormente.
Referencias
- ↑ "Scratchbox 2.2.4" . Scratchbox 2 (sb2) . 1 de abril de 2012. Consultado el 27 de enero de 2023 .
- ↑ "Scratchbox 2.3.90" . Scratchbox 2 (sb2) . 5 de septiembre de 2012. Consultado el 27 de enero de 2023 .
- ↑ "Licencia LGPL-2.1" . Scratchbox 2. 5 de septiembre de 2013. Consultado el 26 de febrero de 2024 .
Enlaces externos
- Documentación de Scratchbox 2
- Una versión archivada del sitio web original de Scratchbox 2 en Wayback Machine (archivada el 2 de junio de 2013).
- Linux embebido
- Automatización de compilaciones