GNU/Linux >> Tutoriales Linux >  >> Linux

Operaciones más comúnmente realizadas en Yocto

El Proyecto Yocto es un generador de distribución de Linux integrado que utiliza varios otros proyectos de código abierto. Una distribución de Linux es una colección de políticas y paquetes de software, y hay cientos de distribuciones de Linux disponibles. La mayoría de estos no están diseñados para sistemas integrados y carecen de la flexibilidad necesaria para lograr los tamaños de huella objetivo y los ajustes de funcionalidad, además de no atender bien a los sistemas con recursos limitados.

El Proyecto Yocto, en cambio, no es una distribución per se; le permite crear una distribución de Linux diseñada para su sistema integrado en particular. El Proyecto Yocto proporciona una distribución de referencia para Linux embebido, llamada Poky.

El Proyecto Yocto tiene en su base los proyectos BitBake y OpenEmbedded-Core (OE-Core). Juntos forman el sistema de construcción Yocto que construye los componentes necesarios para un producto Linux integrado, a saber:

  • Una imagen del gestor de arranque
  • Una imagen del kernel de Linux
  • Una imagen del sistema de archivos raíz
  • Cadenas de herramientas y kits de desarrollo de software (SDK) para el desarrollo de aplicaciones

Con estos, el Proyecto Yocto cubre las necesidades tanto de los desarrolladores de sistemas como de aplicaciones. Cuando el Proyecto Yocto se utiliza como un entorno de integración para cargadores de arranque, el kernel de Linux y aplicaciones de espacio de usuario, nos referimos a él como desarrollo de sistemas.

1. Para abrir el menú de configuración del kernel de Linux (aquí estoy usando la capa meta-intel), ejecute los siguientes comandos.

bitbake -c menuconfig linux-intel

Si está utilizando el núcleo yocto, será:

bitbake -c menuconfig linux-yocto

2. Para verificar si bitbake analiza su receta bbappend, ejecute el siguiente comando:

bitbake-layers show-appends

3. Para agregar un paquete particular en su sistema de archivos raíz.

Abra su archivo local.conf y agregue el nombre de la receta a continuación:

IMAGE_INSTALL += "recipe-name"

Por ejemplo:

IMAGE_INSTALL += "libusb"

o

IMAGE_INSTALL_append = "libusb"

Si desea que este paquete se incluya solo en una imagen en particular,

IMAGE_INSTALL_append_pn-[image-name] = "recipe-name"

Por ejemplo:

IMAGE_INSTALL_append_pn-core-image-sato = "libusb"

4. Para incluir un módulo kernel en su sistema de archivos raíz:

MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-module-cp210x"

5. Para cargar automáticamente el módulo al arrancar:

KERNEL_MODULE_AUTOLOAD += "cp210x"

6. Comando para consultar la lista de imágenes disponibles.

Ejecute el siguiente comando en su directorio de origen:

$ ls meta*/recipes*/images/*.bb

7. Comando para ejecutar la imagen generada en QEMU:

$ runqemu [machine] [zImage] [filesystem]

Por ejemplo:

$ runqemu qemux86 core-image-minimal

8. Comando para listar las máquinas disponibles:

$ ls meta*/conf/machine/*.conf

9. Comando para generar SDK para una imagen en particular:

$ bitbake [imagename] -c populate_sdk

Por ejemplo:

$ bitbake core-image-full-cmdline -c populate_sdk

10. Orden en que se almacenan todas las tareas ejecutadas:

[build directory]/tmp/work/[machine toolchain]/[package name]/[package version]/temp/log.task_order

Por ejemplo:

build/tmp/work/corei7-64-poky-linux/grep/3.1-r0/temp/log.task_order

11. Genere información del árbol de dependencias en la sintaxis de puntos:

$ bitbake -g core-image-minimal

El comando anterior genera un gráfico de dependencia. Bitbake crea archivos pn-buildlist, Recipe-depends.dot y task-depends.dot.

  • pn-lista de compilación :Lista simple de paquetes que se van a compilar
  • depende-de-la-receta.punto :Mostrar dependencias entre recetas
  • depende de la tarea.punto :Muestra dependencias entre tareas.

12. Muestra variables ambientales:

$ bitbake -e [recipe/target name]

Por ejemplo:

$ bitbake -e core-image-minimal | grep ^SDKMACHINE

13. Habilite la salida detallada de las tareas de shell:

$ bitbake -v [recipe/target name]

Por ejemplo:

$ bitbake -v core-image-minimal

14. Continúe bitbake incluso después del error. Esto será útil cuando comenzó una compilación y fue a almorzar y no quiere que se detenga el bitbake si no puede obtener un archivo a través de Internet.

$ bitbake -k [target]

Por ejemplo:

$ bitbake -k core-image-minimal

15. Obligue al objetivo a ejecutarse incluso si hay una caché de estado disponible para él.

$ bitbake -f [target/recipe name]

Por ejemplo:

$ bitbake -f busybox


Linux
  1. Comandos Nginx más útiles en el sistema Linux

  2. ¡Descargue la hoja de referencia de la interfaz de línea de comandos de OpenStack! – Comandos más utilizados

  3. ¿Encontrar las N palabras más frecuentes en un archivo?

  4. Herramientas de prueba de penetración más populares en 2022

  5. Servidor Apache HTTP:contenedores más utilizados (directivas de configuración especiales)

Explicación de las operaciones matemáticas de Bash (aritmética de Bash)

Linux:¿comprensión de las operaciones de comando de sincronización en Linux?

Bash Beginner Series #6:Operaciones de cadenas en Bash

Los 5 entornos de escritorio Linux más hermosos

Operaciones de curva elíptica de línea de comando

lsof :ejemplos más utilizados