Skip to main content

Buildroot para reTerminal

pir

Introducción

Buildroot es una herramienta fácil de usar que simplifica y automatiza el proceso de construcción de un sistema Linux completo para un sistema embebido, utilizando compilación cruzada.

Para lograr esto, Buildroot es capaz de generar una cadena de herramientas de compilación cruzada, un sistema de archivos raíz, una imagen del kernel de Linux y un cargador de arranque para tu objetivo. Buildroot puede ser usado para cualquier combinación de estas opciones, independientemente (puedes por ejemplo usar una cadena de herramientas de compilación cruzada existente, y construir solo tu sistema de archivos raíz con Buildroot).

Tiene una estructura simple que lo hace fácil de entender y extender. Se basa únicamente en el conocido lenguaje Makefile. Buildroot es un proyecto de código abierto y muchos desarrolladores contribuyen a él diariamente.

Siguiendo la guía a continuación, podrás construir tu propia imagen del sistema reTerminal usando Buildroot. ¡Así que comencemos!

Compilar el Código Fuente de Buildroot

Compilación Manual en Máquina Local

Ahora procederemos a compilar manualmente la imagen del sistema para reTerminal usando Buildroot.

nota: Esta guía fue escrita después de probar en una PC anfitriona con Ubuntu 20.04 instalado. Sin embargo, funcionará para otros sistemas Linux.

  • Paso 1. Prepara el entorno de desarrollo en la PC anfitriona instalando los siguientes paquetes (git, gcc y make)
sudo apt update
sudo apt install git
sudo apt install build-essential

Nota: Si ya tienes los paquetes anteriores instalados, puedes omitir este paso.

  • Paso 2. Clona el siguiente repositorio de GitHub
git clone --depth=1 https://github.com/Seeed-Studio/seeed-linux-buildroot.git -b master
  • Paso 3. Navega al directorio seeed-linux-buildroot
cd seeed-linux-buildroot

Compilar con la configuración predeterminada para reTerminal

Escribe lo siguiente para comenzar a compilar con la configuración predeterminada de reTerminal

make reTerminal_64_defconfig
make

Compilar con tu propia configuración para reTerminal

Escribe lo siguiente para instalar el paquete necesario para compilar con tu propia configuración

sudo apt install libncurses-dev
  • Paso 5. Escribe lo siguiente para abrir la ventana de configuración de buildroot
make menuconfig

pir

Puedes usar esta ventana de configuración y navegar a través de las opciones disponibles y personalizar la imagen según tus necesidades. También si haces clic en Save y Exit desde esta ventana sin hacer ningún cambio, se cargará la configuración predeterminada de reTerminal.

Encontrar la Imagen Compilada

Una vez que la compilación sea exitosa, navega a seeed-linux-buildroot/output/images y encontrarás la imagen compilada como sdcard.img

pir

Descargar Imagen Ya Compilada

Si quieres descargar una imagen del sistema reTerminal que ya está compilada usando Buildroot, puedes proceder con los pasos a continuación.

  • Paso 1. Abre este enlace para entrar a la página de Actions del repositorio de GitHub seeed-linux-buildroot

  • Paso 2. Haz clic en el último flujo de trabajo Seeed reTerminal buildroot

pir

  • Paso 3. Bajo Artifacts, haz clic en buildroot deploy para comenzar a descargar la imagen

pir

Nota: Después de descargar la imagen, extrae la imagen para obtener el archivo sdcard.img

Flashear la Imagen al reTerminal

Ahora procederemos a flashear la imagen al eMMC del CM4 en el reTerminal.

Sigue los pasos en esta wiki y presta atención al siguiente paso:

Nota: Cuando abras Raspberry Pi Imager, haz clic en CHOOSE OS, selecciona Use custom y elige el archivo sdcard.img descargado.

pir

Primer Arranque en reTerminal

Después de flashear la imagen del sistema al reTerminal, enciende el reTerminal. Aquí verás el registro del kernel aparecer en la pantalla LCD del reTerminal y al final se abrirá una aplicación de demostración que está hecha usando Qt.

El tiempo de arranque de la imagen del sistema predeterminada es alrededor de 30 segundos

pir

Analizar la Imagen de Buildroot

Como se mencionó anteriormente, Buildroot es una herramienta muy poderosa, puede depender de bibliotecas y herramientas de terceros, puede construir rápidamente lo que necesitamos. Si quieres entender el tiempo de compilación de Buildroot, dependencias, tamaño de los recursos consumidos por la compilación y demás, es muy inconveniente verificar a través del código. Sin embargo, Buildroot proporciona herramientas de análisis visual para analizar lo mencionado anteriormente y solo necesitamos unos pocos comandos simples para usarlas.

Comienza instalando los siguientes paquetes

sudo apt install python3-matplotlib python3-numpy

Generar Diagramas de Dependencias

Una de las tareas de Buildroot es entender las dependencias entre paquetes y asegurarse de que se construyan en el orden correcto. Estas dependencias a veces pueden ser complejas, y para un sistema dado, a menudo no es fácil entender por qué un paquete u otro fue introducido por Buildroot y construido exitosamente. Para ayudar a entender las dependencias y comprender mejor el papel de los diferentes componentes en sistemas Linux embebidos, Buildroot es capaz de generar diagramas de dependencias (en formato PDF)

  • Paso 1. Instala el siguiente paquete
sudo apt install graphviz
  • Paso 2. Generar diagramas de dependencias
make graph-depends

pir

Después de los comandos anteriores, los diagramas de dependencias se generarán en seeed-linux-buildroot > output > graphs como:

  • graph-depends.pdf
  • graph-depends.dot

Nota: Haz clic en la imagen anterior para ver una versión ampliada

Generar Análisis del Tamaño de los Recursos Consumidos por la Compilación

Buildroot puede generar un análisis del tamaño de los recursos consumidos por la compilación.

Escribe el siguiente comando

make graph-size

Después del comando anterior, los archivos de análisis visual se generarán en seeed-linux-buildroot > output > graphs como:

  • graph-size.pdf
  • file-size-stats.csv
  • package-size-stats.csv

Nota: Haz clic en la imagen anterior para ver una versión ampliada

Probar la Imagen de Buildroot

Para probar la imagen de Buildroot anterior con reTerminal, puedes visitar la wiki de Uso de Hardware e Interfaces de reTerminal y consultar los pasos mencionados.

Recursos

Soporte Técnico y Discusión de Productos

¡Gracias por elegir nuestros productos! Estamos aquí para brindarte diferentes tipos de soporte para asegurar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades.

Loading Comments...