On 10/17/2013 07:21 AM, Zhou Zhu wrote:
So how does the libraries place in the rootfs? like lib/lib64 as in x86/x64? Is there any similar rule in arm/arm64 system (whatever openebedded/ubuntu/android/...) for that? Like multi arch spec in ubuntu?
OpenEmbedded unfortunately does not support multiarch and when I last asked about it [1], it didn't sound like there was any intention to add it. I briefly looked into doing it myself, but I'm just not yet familiar enough with the internals.
1. http://lists.linaro.org/pipermail/cross-distro/2013-April/000434.html
As Matthias mentioned, the multi-arch paths, assuming /usr squash, are:
/lib/arm-linux-gnueabihf /lib/aarch64-linux-gnu
I've also toyed with a /bin/$TRIPLET extension to the scheme, but don't yet have a good solution for scripts with shebang lines.
It would be nice if it were easier to install the binary toolchain releases into a multi-arch rootfs, but it's been a while since I set everything and I don't recall the specifics of why it wasn't two straight copy operations. It would makes things easier if one didn't have to always pass -dynamic-linker and -rpath settings to get dynamic linking working on multiarch root filesystems, but at least that works. In my opinion, multiarch is the best option out there, and I'd love to see improved support for it, but I understand that there's a lot of work involved, the benefits are mostly for pretty fringe (or should I say cutting edge?) use cases, and it's tricky to not break things in the transition.
Regards, Christopher