[YOCTO] How to rebuild virtual/kernel with new KERNEL_IMAGETYPE


I’ve recently build an image with a kernel type zImage. But now, I’m trying to build this same image but with a different type for kernel image : uImage. I then set KERNEL_IMAGETYPE=“uImage” in my conf/local.conf to overwrite the precedent configuration.

But what is the best way I have to follow to create this new kernel image ?


Assuming KERNEL_IMAGETYPE=“uImage” in conf/local.conf takes precedence over what is in the machine configuration I would:

bitbake -c cleansstate virtual/kernel
bitbake virtual/kernel

And to deploy the binary build the image

bitbake <image>

I follow what you wrote but in my deploy directory the uImage doesn’t appear. I’ve also tested with a new rootfs extension (IMAGE_FSTYPES+=“ext3”) but the rootfs still remains in ext4.

Maybe I missed something…

After cleansstate of virtual/kernel, bitbake [my image] instead of bitbake virtual/kernel works.

Ok, then the image build takes care of deploying the kernel binary.
I’ve edited my answer accordingly.

I don’t understand the remark about ext3 and IMAGE_FSTYPES.
Neither zImage nor uImage will be influenced by this setting.

Please, show value of the variable KERNEL_IMAGETYPE of you environment here.


$ bitbake -e your_image_recipe | egrep ^"KERNEL_IMAGETYPE"

Cleiton Bueno

Blog | Linkedin | B2Open

@max.krummenacher : IMAGE_FSTYPES was just another test to identify if the problem concerns my local.conf file or an other file.

@cleitonbueno : I’m currently compiling an image, I’ll post the result asap. But the local.conf overwrites the variable if there is a conflict with other files isn’t it ?