Preparación
Primero, necesitamos instalar los requisitos previos requeridos. Asumo que tienes sudoacceso.
sudo apt-get install git ncurses-dev make gcc-arm-linux-gnueabi
git es el sistema de control de versiones utilizado por el equipo del kernel de Linux.
ncurseses una biblioteca para construir menús de consola. Es necesario para menuconfig.
make ejecuta la compilación para nosotros.
gcc-arm-linux-gnueabi es el compilador cruzado.
A continuación, necesitamos recuperar la fuente, ejecutar:
git clone https://github.com/raspberrypi/linux raspberrypi-linux
cd raspberrypi-linux
Esto clonará el código fuente en un directorio llamado raspberrypi-linuxy cambiará a él.
Compilacion
Primero tenemos que mover el archivo de configuración ejecutando
cp arch/arm/configs/bcmrpi_cutdown_defconfig .config
Luego configure la compilación del núcleo
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- oldconfig
Opcional: Personalice la compilación usando menuconfig
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- menuconfig
Luego ejecuta la compilación
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k
Referencias
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -kCreo que Alex tiene razón, pero el gcc-arm-linux-gnueabi está compilado para arm cpus sin unidad de coma flotante de hardware. Puede encontrar un compilador cruzado con soporte armhf en: https://github.com/raspberrypi/tools y un buen tutorial para comenzar aquí: http://hertaville.com/2012/09/28/development-environment- raspberry-pi-cross-compiler /
fuente
Documentación oficial
https://www.raspberrypi.org/documentation/linux/kernel/building.md ( GitHub )
Le recomendaría que solo siga los pasos allí o envíe una solicitud de extracción si algo queda desactualizado o no es lo suficientemente claro: es muy probable que esas instrucciones sean correctas y estén actualizadas, ya que forman parte de la documentación oficial del proyecto.
fuente