Difference between revisions of "Rockpi4/dev/Debian/es es"
(Created page with "{{rockpi4_header_es}} {{Languages|rockpi4/dev/Debian}} ROCK Pi 4 > Desarrollando > rockpi4/dev/Debian/es_es | Compilando De...") |
|||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | {{Languages|rockpi4/dev/Debian}} | ||
{{rockpi4_header_es}} | {{rockpi4_header_es}} | ||
− | |||
+ | <div class="col-md-12" style="text-shadow: 2px 2px 4px #DDDDDD; box-shadow: 2px 2px 5px #999999;"> | ||
[[rockpi4/es_es | ROCK Pi 4]] > [[rockpi4/dev/es_es | Desarrollando]] > [[rockpi4/dev/Debian/es_es | Compilando Debian]] | [[rockpi4/es_es | ROCK Pi 4]] > [[rockpi4/dev/es_es | Desarrollando]] > [[rockpi4/dev/Debian/es_es | Compilando Debian]] | ||
= El SDK de Rockchip para Debian = | = El SDK de Rockchip para Debian = | ||
− | + | A continuación están las instrucciones sobre cómo construir una imagen Debian para el ROCK Pi 4. | |
− | == | + | == Obtener el código fuente == |
− | + | Necesitarás Git para usar múltiples repositorios git en la construción de la imagen. | |
− | + | Instala Git si no lo tienes. | |
sudo apt-get update | sudo apt-get update | ||
sudo apt-get install git | sudo apt-get install git | ||
− | + | Clona el código fuente | |
git clone --recursive https://github.com/radxa/rockchip-bsp.git | git clone --recursive https://github.com/radxa/rockchip-bsp.git | ||
− | + | Bájate | |
build kernel README.md rkbin rootfs u-boot | build kernel README.md rkbin rootfs u-boot | ||
− | + | Estos directorios contienen instrucciones para: | |
* build: | * build: | ||
− | ** | + | ** Ficheros de script y ficheros de configuración para compilar u-boot, el núcleo y el rootfs. |
* kernel: | * kernel: | ||
− | ** | + | ** El código fuente del núcleo, la versión actual es la 4.4 |
* rkbin: | * rkbin: | ||
− | ** | + | ** Binarios precompilados de Rockchip, se incluye el cargador de primera etapa, y el Firmware ATF(Arm Trustzone Firmware). |
* rootfs: | * rootfs: | ||
− | ** Bootstrap | + | ** Bootstrap es un rootfs basado en Debian, soporta las arquitecturas armhf y arm64 de Debian Jessie y Stretch. |
* u-boot: | * u-boot: | ||
− | ** u-boot | + | ** u-boot como segunda etapa de cargador de arranque |
− | == | + | == Instalar el toolchain y las demás herramientas de construcción == |
sudo apt-get install gcc-aarch64-linux-gnu device-tree-compiler libncurses5 libncurses5-dev build-essential libssl-dev mtools | sudo apt-get install gcc-aarch64-linux-gnu device-tree-compiler libncurses5 libncurses5-dev build-essential libssl-dev mtools | ||
− | == | + | == Compilando u-boot == |
− | ./build/mk-uboot.sh rockpi4b # | + | ./build/mk-uboot.sh rockpi4b #Para ROCK Pi 4 Modelo B |
− | + | Las imágenes generadas se copiarán en la carpeta out/u-boot | |
ls out/u-boot/ | ls out/u-boot/ | ||
idbloader.img rk3399_loader_v1.12.112.bin trust.img uboot.img | idbloader.img rk3399_loader_v1.12.112.bin trust.img uboot.img | ||
− | == | + | == Compilar el núcleo == |
− | + | Compilar el núcleo con la configuración por defecto '''rockchip_linux_defconfig''' | |
− | ./build/mk-kernel.sh rockpi4b # | + | ./build/mk-kernel.sh rockpi4b #Para ROCK Pi 4 Modelo B |
− | === | + | === Cambiar la configuración del núcleo(opcional)=== |
− | + | Opcionalmente, puedes cambiar la configuración por defecto del núcleo. | |
cd kernel | cd kernel | ||
Line 67: | Line 68: | ||
make menuconfig | make menuconfig | ||
cd .. | cd .. | ||
− | ./build/mk-kernel.sh rockpi4b # | + | ./build/mk-kernel.sh rockpi4b #Para ROCK Pi 4 Modelo B |
− | + | Te devolverá la imagen del núcleo y el fichero dtb | |
ls out/kernel/ | ls out/kernel/ | ||
Image rockpi-4b-linux.dtb | Image rockpi-4b-linux.dtb | ||
− | == | + | == Crear una imagen de rootfs == |
− | + | Para compilar un rootfs de 32bits: | |
export ARCH=armhf | export ARCH=armhf | ||
− | + | Para compilar un rootfs de 64bits: | |
export ARCH=arm64 | export ARCH=arm64 | ||
− | + | Cómo construir un sistema de base Debian usando el servicio de construcción ubuntu de linaro (ubuntu-build-service). | |
cd rootfs | cd rootfs | ||
Line 93: | Line 94: | ||
RELEASE=stretch TARGET=desktop ARCH=$ARCH ./mk-base-debian.sh | RELEASE=stretch TARGET=desktop ARCH=$ARCH ./mk-base-debian.sh | ||
− | + | Esto creará una imagen de Debian Stretch, obtendrás un tar de rootfs llamado '''linaro-stretch-alip-xxxx.tar.gz'''. | |
− | + | Compila el rootfs de rk-debian con debug: | |
VERSION=debug ARCH=$ARCH ./mk-rootfs-stretch.sh && ./mk-image.sh | VERSION=debug ARCH=$ARCH ./mk-rootfs-stretch.sh && ./mk-image.sh | ||
− | + | Esto instalará los paquetes de Rockchip especificados y los enlazará con el rootfs Debian estándar y generará una imagen rootfs en formato ext4 en '''rootfs/linaro-rootfs.img'''. | |
− | == | + | == Combinar todo en una única imagen == |
build/mk-image.sh -c rk3399 -t system -r rootfs/linaro-rootfs.img | build/mk-image.sh -c rk3399 -t system -r rootfs/linaro-rootfs.img | ||
− | + | Esto combinará el u-boot, el núcleo y el rootfs en una única imagen y generará una tabla de particiones GPT. La salida será | |
out/system.img | out/system.img | ||
− | == | + | == Grabando la imagen == |
+ | |||
+ | Para usuarios normales, seguir las instrucciones de [[Rockpi4/install/es_es | aquí]]. Necesitarás sólo '''out/system.img'''. | ||
− | + | Para los desarrolladores, que graban desde el puerto USB OTG, seguir las instrucciones de [[Rockpi4/dev/usb-install/es_es |aquí]]. Necesitarás '''rk3399_loader_xxx.bin''' y el archivo generado '''out/system.img''' . | |
− | + | == Problemas == | |
− | + | Mira primero en la sección [[Rockpi4/FAQs/es_es |Dudas del Rock Pi 4]], si no te ayuda, inicia una nueva consulta en el foro https://forum.radxa.com/c/dev | |
− | + | </div> |
Latest revision as of 17:00, 9 February 2019
ROCK Pi 4 > Desarrollando > Compilando Debian
Contents
El SDK de Rockchip para Debian
A continuación están las instrucciones sobre cómo construir una imagen Debian para el ROCK Pi 4.
Obtener el código fuente
Necesitarás Git para usar múltiples repositorios git en la construción de la imagen.
Instala Git si no lo tienes.
sudo apt-get update sudo apt-get install git
Clona el código fuente
git clone --recursive https://github.com/radxa/rockchip-bsp.git
Bájate
build kernel README.md rkbin rootfs u-boot
Estos directorios contienen instrucciones para:
- build:
- Ficheros de script y ficheros de configuración para compilar u-boot, el núcleo y el rootfs.
- kernel:
- El código fuente del núcleo, la versión actual es la 4.4
- rkbin:
- Binarios precompilados de Rockchip, se incluye el cargador de primera etapa, y el Firmware ATF(Arm Trustzone Firmware).
- rootfs:
- Bootstrap es un rootfs basado en Debian, soporta las arquitecturas armhf y arm64 de Debian Jessie y Stretch.
- u-boot:
- u-boot como segunda etapa de cargador de arranque
Instalar el toolchain y las demás herramientas de construcción
sudo apt-get install gcc-aarch64-linux-gnu device-tree-compiler libncurses5 libncurses5-dev build-essential libssl-dev mtools
Compilando u-boot
./build/mk-uboot.sh rockpi4b #Para ROCK Pi 4 Modelo B
Las imágenes generadas se copiarán en la carpeta out/u-boot
ls out/u-boot/ idbloader.img rk3399_loader_v1.12.112.bin trust.img uboot.img
Compilar el núcleo
Compilar el núcleo con la configuración por defecto rockchip_linux_defconfig
./build/mk-kernel.sh rockpi4b #Para ROCK Pi 4 Modelo B
Cambiar la configuración del núcleo(opcional)
Opcionalmente, puedes cambiar la configuración por defecto del núcleo.
cd kernel export ARCH=arm64 export CROSS_COMPILE=aarch64-linux-gnu- make rockchip_linux_defconfig make menuconfig cd .. ./build/mk-kernel.sh rockpi4b #Para ROCK Pi 4 Modelo B
Te devolverá la imagen del núcleo y el fichero dtb
ls out/kernel/ Image rockpi-4b-linux.dtb
Crear una imagen de rootfs
Para compilar un rootfs de 32bits:
export ARCH=armhf
Para compilar un rootfs de 64bits:
export ARCH=arm64
Cómo construir un sistema de base Debian usando el servicio de construcción ubuntu de linaro (ubuntu-build-service).
cd rootfs sudo apt-get install binfmt-support qemu-user-static sudo dpkg -i ubuntu-build-service/packages/* # ignore the broken dependencies, we will fix it next step sudo apt-get install -f RELEASE=stretch TARGET=desktop ARCH=$ARCH ./mk-base-debian.sh
Esto creará una imagen de Debian Stretch, obtendrás un tar de rootfs llamado linaro-stretch-alip-xxxx.tar.gz.
Compila el rootfs de rk-debian con debug:
VERSION=debug ARCH=$ARCH ./mk-rootfs-stretch.sh && ./mk-image.sh
Esto instalará los paquetes de Rockchip especificados y los enlazará con el rootfs Debian estándar y generará una imagen rootfs en formato ext4 en rootfs/linaro-rootfs.img.
Combinar todo en una única imagen
build/mk-image.sh -c rk3399 -t system -r rootfs/linaro-rootfs.img
Esto combinará el u-boot, el núcleo y el rootfs en una única imagen y generará una tabla de particiones GPT. La salida será
out/system.img
Grabando la imagen
Para usuarios normales, seguir las instrucciones de aquí. Necesitarás sólo out/system.img.
Para los desarrolladores, que graban desde el puerto USB OTG, seguir las instrucciones de aquí. Necesitarás rk3399_loader_xxx.bin y el archivo generado out/system.img .
Problemas
Mira primero en la sección Dudas del Rock Pi 4, si no te ayuda, inicia una nueva consulta en el foro https://forum.radxa.com/c/dev