hello,
everyone, when i use yocto to build my own image, there happends some problems.Here is the error
ERROR: Multiple .bb files are due to be built which each provide virtual/kernel (fsl-release-bsp/sources/meta-fsl-bsp-release/imx/meta-fsl-arm/recipes-kernel/linux/linux-imx_3.10.17.bb fsl-release-bsp/sources/meta-sources/my-linux_3.10.17.bb).
This usually means one provides something the other doesn't and should.
i know yocto has "PREFERRED_PROVIDER" to choose what i want .so i modify my layer's "layer.conf" ,here is what it changed
BBFILE_COLLECTIONS += "kernel"
BBFILE_PATTERN_kernel = "^${LAYERDIR}/"
BBFILE_PRIORITY_kernel = "9"
PREFERRED_PROVIDER_virtual/kernel = "taflus-linux-2wk"
PREFERRED_VERSION_taflus-linux-2wk_mx6 = "3.10.17"\
but there happen new problems :
NOTE: Resolving any missing task queue dependencies
NOTE: multiple providers are available for runtime kernel-base (linux-fslc, linux-imx, linux-boundary)
NOTE: consider defining a PREFERRED_PROVIDER entry to match kernel-base
NOTE: multiple providers are available for runtime kernel-image (linux-fslc, linux-imx, linux-boundary)
NOTE: consider defining a PREFERRED_PROVIDER entry to match kernel-image
and then it doesn't compile my kernel . i don't know how to compile my kernel when building my image and how to use "PREFERRED_PROVIDER" correctly .
Please give some inspiration:smileyconfused:
Hello Maricle,
Have you checked he Yocto BSP Developoer’s Guide?
http://www.yoctoproject.org/docs/current/bsp-guide/bsp-guide.html
I would review the “PROVIDES” dependencies better on your recipes. There is some more information on the Open Embedded User Manual (link below). Perhaps you may try with “RPROVIDES” and then the distro/machine would select which virtual/kernel it wants.
http://docs.openembedded.org/usermanual/usermanual.html
Please let us know of your findings!
thank you .
i don't know why i have to modify meta-fsl-bsp-release/imx/meta-fsl-arm/conf/layer.conf .in my opinion,changing mykernel's layer.conf can also work well ,but it didn't
doesn't it search "provides" from the higher Priority‘s layer ?
If I understand correctly, “PROVIDES” does not depend so much on the layer’s priorities. The default provider is the provider with the same name as the target. Bitbake defaults to the highest version of a provider rather than the one located in the layer with the highest priority.
There is some information on section 2.4 of the Bitbake User’s Manual (link below).
http://www.yoctoproject.org/docs/1.7/bitbake-user-manual/bitbake-user-manual.html