tag mp3tag kid3 editar easytag linux embedded arm embedded-linux buildroot

linux - mp3tag - cómo reconstruir rootfs en buildroot



mp3 tag linux (1)

Voy a configurar el entorno de compilación para crear mi propio sistema integrado de Linux para la placa AT91SAM9X25. Estoy usando buildroot para hacer esto. El comando make crea todos los objetivos, el primero construye toolchain, luego empaqueta y luego rootfs e imágenes de rootfs (tar, cpio ...). Para reconstruir rootfs usualmente uso make make y luego make. El comando make clean quita todo e incluye toolchain.

Entonces, mi primera pregunta es: ¿hay alguna forma de rehacer rootfs sin construir toolchain? Se tarda mucho tiempo.

También estoy construyendo Linux kernel dentro de buildroot. He activado BR2_LINUX_KERNEL [= y] en buildroot. El Linux está configurado para usar el sistema de archivos RAM inicial, por lo que para construir kernel se requiere una imagen de rootfs (que debería ser creada por buildroot). Cuando ejecuto make en raíz de buildroot, el edificio falla con el error No se puede abrir ''buildroot-2013.05 / output / images / rootfs.cpio''. Porque (si entiendo correctamente) la secuencia de construcción es toolchain - pakages - rootfs - kernel de linux - imágenes de rootfs. Cuando intenta construir el kernel de Linux, la imagen rootfs.cpio no se crea.

Entonces, la segunda pregunta es: ¿Cómo construir linux dentro de buildroot si quiero usar el sistema de archivos RAM inicial?

Posiblemente hay alternativas más eficientes que buildroot?

Gracias por adelantado.


El comando make crea todos los objetivos

No desea hacer eso (hasta que Buildroot esté configurado).
Primero necesita configurar Buildroot especificando la placa de destino.
Según el manual , puede comenzar desde cero o crear un archivo de configuración Buildroot para su placa AT91SAM9X25 derivado de una placa similar como configs / at91sam9g20dfc_defconfig

Además del archivo de configuración de Buildroot, también necesitará un archivo de configuración de kernel de Linux (a menos que desee intentar configurar el kernel desde cero).
El archivo de configuración del kernel para la placa eval de Atmel con un AT91SAM9x5 es at91sam9x5ek_defconfig

También deberías leer la sección 3.4.2. Creando su propio soporte de tablero

Entonces, mi primera pregunta es: ¿hay alguna forma de rehacer rootfs sin construir toolchain? Se tarda mucho tiempo.

La respuesta depende de cómo se defina " rehacer rootfs ". Si elimina el directorio output/images/ , los archivos de los rootfs se reescribirán.
Si elimina directorios en output/build/ , esos paquetes o subsistemas se recopilan desde el origen.

Si configura Buildroot para utilizar su propia cadena de herramientas o una externa, entonces make clean no las eliminaría. Si configura Buildroot para instalar la cadena de herramientas que construye fuera de su directorio, entonces puede dejarlo solo durante una make clean .

Por supuesto, la creación de Buildroot es lo suficientemente inteligente como para saber qué ha cambiado desde la última versión y lo que debe recompilarse.
Debería ser el raro caso de que necesite eliminar directorios en output/build/ para forzar la output/build/ .

Entonces, la segunda pregunta es: ¿Cómo construir linux dentro de buildroot si quiero usar el sistema de archivos RAM inicial?

Necesita configurar adecuadamente tanto Buildroot como el kernel de Linux.

make menuconfig Filesystem images ---> make linux-menuconfig General setup ---> make

Información más concisa sobre el uso de Buildroot para AT91SAM9x5 es esta página de Linx4SAM

Posiblemente hay alternativas más eficientes que buildroot?

Hay otras herramientas como Open Embedded , pero describirlas como " más eficientes " es subjetiva.

APÉNDICE

cómo reconstruir rootfs en buildroot

Para obligar a los rootfs a reconstruirse (en este caso, un initramfs) elimine tres archivos ocultos en el directorio output / build / linux-x.xx.xx

.stamp_images_installed .stamp_initramfs_rebuilt .stamp_target_installed