[OE-core] SDK and external toolchain
Matthieu CRAPET
Matthieu.CRAPET at ingenico.com
Thu Jul 26 07:14:52 UTC 2012
Greetings,
Updated recently my oe-core and faced an unwanted side effect.
You need to know that I'm using an externel (linaro) toolchain (my
.bb/.inc are a clone of "sourcery" toolchain example).
My toolchain is compiled against a custom (external) eglibc 2.15.
Since commit a0de2a56f19ae4d8cd88e46e96917a7a019fe1ab --
image.bbclass: Add support to build the SDK in parallel with the image
http://cgit.openembedded.org/openembedded-core/commit/?id=a0de2a56f19ae4
d8cd88e46e96917a7a019fe1ab
my images generation are failing because it tries to compile eglib 2.16
and do_configure fails. I have also 3 errors:
ERROR: Multiple .bb files are due to be built which each provide
virtual/libc (.../meta/recipes-core/eglibc/eglibc_2.15.bb
.../meta-ingenico/recipes/external-linaro-toolchain/external-linaro-tool
chain.bb).
This usually means one provides something the other doesn't and should.
ERROR: Multiple .bb files are due to be built which each provide
virtual/arm-ingenico-linux-gnueabi-libc-for-gcc
(.../meta/recipes-core/eglibc/eglibc_2.15.bb
.../meta-ingenico/recipes/external-linaro-toolchain/external-linaro-tool
chain.bb).
This usually means one provides something the other doesn't and should.
ERROR: Multiple .bb files are due to be built which each provide
virtual/libiconv (.../meta/recipes-core/eglibc/eglibc_2.15.bb
.../meta-ingenico/recipes/external-linaro-toolchain/external-linaro-tool
chain.bb).
This usually means one provides something the other doesn't and should.
Notice that "PREFERRED_PROVIDER"s are correctly defined (like in
distro/include/tcmode-external-sourcery.inc). And I use bitbake 1.15.3.
For now I fixed it crudely, because I don't need SDK.
diff --git a/meta/classes/toolchain-scripts.bbclass
b/meta/classes/toolchain-scripts.bbclass
index 44284c3..f5fd4d7 100644
--- a/meta/classes/toolchain-scripts.bbclass
+++ b/meta/classes/toolchain-scripts.bbclass
@@ -136,7 +136,7 @@ toolchain_create_sdk_env_script_for_installer () {
#we get the cached site config in the runtime
TOOLCHAIN_CONFIGSITE_NOCACHE = "${@siteinfo_get_files(d, True)}"
TOOLCHAIN_CONFIGSITE_SYSROOTCACHE =
"${STAGING_DATADIR}/${TARGET_SYS}_config_site.d"
-TOOLCHAIN_NEED_CONFIGSITE_CACHE = "${TCLIBC} ncurses"
+TOOLCHAIN_NEED_CONFIGSITE_CACHE = "ncurses"
#This function create a site config file
toolchain_create_sdk_siteconfig () {
---
populate_sdk_base.bbclass inheric toolchain-scripts which adds the
(unwanted) eglibc dependency.
Maybe this should be conditional from TOOLCHAIN_TARGET_TASK value? Or
dependencies should be added only when calling
task-core-standalone-sdk-target?
In my use case, when I bitbake an image recipe, I don't want to deal
with SDK.
Concerning errors, is there a way to see what's not provided in order to
fix virtual/libc message (bitbake -e) ?
Best regards,
Matthieu
More information about the Openembedded-core
mailing list