更改 qemux86 機器使用的核心配方

更改 qemux86 機器使用的核心配方

我決定更改 Yocto 使用的核心(作為學習練習),但我不知道 Yocto 使用的核心儲存在哪裡。我知道它存儲在一個食譜中,但我不知道它存儲在哪個食譜中。我實際上正在輸入一些命令(如下所列),請隨意在您的計算機上執行。

 $ git clone http://git.yoctoproject.org/git/poky
 $ cd poky
 $ git checkout -b fido origin/fido
 $ source oe-init-build-env
 $bitbake core-image-minimal
 $runqemu qemux86

答案1

我不知道 Yocto 使用的核心儲存在哪裡。

設定檔poky/meta/conf/machine/include/qemu.inc有以下幾行

   # Use a common kernel recipe for all QEMU machines
   PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"

這指示 bitbake 在路徑下尋找內核配方狹小的/元/食譜-內核/linux/

現在在那條路上你會注意到兩個食譜

  • linux-yocto_4.1.bb
  • linux-yocto_4.4.bb

依照設計,bitbake 將會使用linux-yocto_4.4.bb,即將為機器 qemux86 建置 4.4 核心。這是因為,bitbake 的設計偏好最高配方版本。

我決定更改 Yocto 使用的核心(作為學習練習)

在我在這個答案開頭指出的設定檔中,您可以再新增一行

   PREFERRED_VERSION_linux-yocto = "4.1%"

新增這一行將使 bitbake 使用狹小的/meta/recipes-kernel/linux/linux-yocto_4.1.bb配方,即 qemux86 的 4.1 核心。

相關內容