2014-11-05 1 views
7

Я работаю над созданием нового BSP с использованием yocto daisy. Когда я создаю свое изображение, я получаю следующие предупреждения:Как указать, какое ядро ​​строить с помощью bitbake/yocto

NOTE: Resolving any missing task queue dependencies 
NOTE: multiple providers are available for virtual/kernel (my-kernel, linux-dummy) 
NOTE: consider defining a PREFERRED_PROVIDER entry to match virtual/kernel 
NOTE: multiple providers are available for runtime kernel-modules (my-kernel, linux-dummy) 
NOTE: consider defining a PREFERRED_PROVIDER entry to match kernel-modules 

Я не могу понять, как определить предпочтительного поставщика для ядра. Из того, что я прочитал мне просто нужно, чтобы добавить его в мета-myLayer/CONF/машина/myMachine.conf Что я и сделал, как таковой: кажется,

KERNEL_IMAGETYPE = "zImage" 
KERNEL_DEVICETREE = "${S}/arch/arm/boot/dts/myTree.dtb" 
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}" 
# use this kernel and version 
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto" 
PREFERRED_VERSION_linux-yocto = "3.14%" 

Yocto/BitBake, игнорируя эти строки.
Кроме того, чтобы быть ясным, я также правильно задал имя машины в сборке/conf/local.conf

Есть ли что-то еще, что мне нужно изменить, чтобы заставить это работать? Или Йокто только что сломан?

+0

У вас есть предпочтительный набор поставщиков ядра как 'linux-yocto', но он говорит только о' my-kernel' и 'linux-dummy 'доступны. Вы уверены, что у вас есть 'poky/meta-yocto' и' poky/meta-yocto-bsp' слои, добавленные в ваш 'bblayers.conf'? –

+0

@ E-rich Да, мои bblayers включают мета-yocto и met-yocot-bsp в переменной BBLAYERS. – AllenKll

ответ

6

Как пишет E-rich, система сборки видит только мои ядра и linux-dummy как доступные поставщики для виртуального/ядра. Таким образом, я бы предположил, что вы действительно хотите построить один из них?

Причина, по которой linux-yocto недоступна, вероятно, ваша машина не находится в регулярном выражении COMPATIBLE_MACHINE в linux-yocto_3.14.bb. Таким образом, если вы хотите использовать linux-yocto, вы должны использовать этот рецепт на своем собственном слое и добавить свою машину в COMPATIBLE_MACHINE. (Вам также, вероятно, потребуется указать еще несколько параметров: SRCREV, KBRANCH и т. Д.)

+2

Так оно и было. Спасибо, что указал мне в правильном направлении. Yocto гораздо труднее использовать, чем BuildRoot. Если бы не требовалось использовать yocto, я бы переключился на BR. – AllenKll