交叉编译Raspberry Pi内核时一些命令的含义



这个树莓派的官方文档详细介绍了如何为树莓派交叉编译新的Linux内核的过程。然而,下面显示的这份文件中的一些命令,我很难理解。

对于Pi 2:

$cd linux
$KERNEL=kernel7
$make ARCH=arm CROSS_COMPILE=arm linux gneabihf-bcm2709_defconfig

  1. KERNELenv代表什么剂量
  2. 为什么我们需要将KERNEL设置为kernel7
  3. 此外,make bcm2709_defconfig做什么

KERNEL-它是环境变量。稍后,当我们将新编译的映像复制到启动文件夹时,我们将使用该环境变量。

用法:sudo scripts/mkknimg arch/arm/boot/zImage mnt/fat32/$KERNEL.img

您可以将环境变量更改为任何所需的变量,但必须在引导文件夹的config.txt中添加一行,即kernel=changed_name.img

KERNEL=kernel7-打开启动文件夹。你会看到两个.img。一个是kernel.img,另一个是kernel7.img。默认情况下,Raspi 2/3在启动时使用kernel7.img。默认情况下,Raspi 1使用kernel.img。当您使用Raspi 2/3时,您将环境变量设置为kernel7。

bcm2709_defconfig-这是为Raspberry Pi 2架构制作的配置文件。例如,Raspberry Pi 1编译使用bcmrpi_defconfig。

-bcm2709_defconfig选择要使用的配置文件。它们存储在如下路径中:arch/arm/configs/对于KERNEL env,我以前从未见过。。。它不是主线内核,可能是RPi的一个特殊功能。

相关内容

  • 没有找到相关文章

最新更新