| Summary: | populate_sdk fails with multilib due to lib32- packages uninstallable | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Ferry <ferry.toth> |
| Component: | devtools / tool chain | Assignee: | Rebecca Chang <rebecca.swee.fun.chang> |
| Status: | RESOLVED WORKSFORME | QA Contact: | |
| Severity: | normal | ||
| Priority: | Medium | CC: | ferry.toth, meta.mr.watcher, meta.watcher |
| Version: | 2.2.2 | ||
| Target Milestone: | 2.5 M2 | ||
| Hardware: | x86 | ||
| OS: | Multiple | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | Don't know | |
|
Description
Ferry
2017-10-12 22:21:49 UTC
Hi Ferry, would you please provide more details on your configurations? Why would you need to install "lib32-libgcc" as you mentioned you just need to build uboot which is already successful? I tried with YP core BSPs with multilib but did not reproduce your lib32-* issues. Probably you could clean the shared-state cache of your build and retry. Hi Rebecca, Sure, the image is here https://github.com/htot/meta-intel-edison/blob/morty-64/meta-intel-edison-distro/recipes-core/images/edison-image.bb The problem is: the target is 64 bit Edison and u-boot is mixed 32/64 bit. The original (32 bit) edison image has IMAGE_INSTALL += "u-boot". This is probably not 100% correct as it also installs u-boot on the image. Nevertheless it causes the u-boot image to be built and deployed in the deploy directory. I found that changing the tune to 64 bit causes do_compile to fail for u-boot. Apparently u-boot needs lib32-libgcc to build (also building u-boot outside of YP on a x86_64 platform requires to have multilib installed). I found that installing multilib with lib32-libgcc and changing to IMAGE_INSTALL += "lib32-u-boot" at least causes u-boot to build (plain u-boot still fails). But now building the sdk failed even after cleaning the sstate. PS I now have more success by creating a 2nd conf (with multilib) and removing multilib from the default conf file and removing lib32-u-boot from the image. Now I can build the image with bitbake -k edison-image and u-boot with bitbake -R u-boot.conf lib32-u-boot. While building the sdk also works. Still the errors below show something is wrong in the sdk code. As far as I can tell, it tries to install all packages it finds that where built during the image build. But I don't know why there are not installable. The only problem with the mentioned work around is, it is not very convenient to do 2 separate builds and the u-boot image now does not get deployed. Not sure how to get that done. Eventually I want to get Edison added to this layer https://github.com/westeri/meta-acpi to get Edison to boot with ACPI provided by u-boot (thanks to Andy Shevshenko's work on both u-boot and linux). It appears the question has been answered. If need be restate the question and put it back in NEEDINFO. (In reply to comment #2) > PS I now have more success by creating a 2nd conf (with multilib) and > removing multilib from the default conf file and removing lib32-u-boot from > the image. Hi Ferry, Could you try with multilib configurations but removing lib32-u-boot from IMAGE_INSTALL and use DEPENDS in u-boot recipe instead? Issue is not able to reproduce in poky environment. I am going to close this until we get further update from reporter and we could reopen this in future. |