[yocto] yocto 1.2: 2nd experiences: image building problems

Frans Meulenbroeks fransmeulenbroeks at gmail.com
Thu May 3 01:01:48 PDT 2012


Dear all,

I'm migrating a project from oe-classic to yocto 1.2.
This goes fairly smoothly. Got some warnings I reported before.

If I build my app it runs fine (with the uclibc from oe-classic that
is already on the board).
Next step was to try to build a complete image.

There I encountered two issues.
The first one was that my image recipe had a few SRC_URI += lines.
This to get the static device table I am using and two files I needed
in my IMAGE_POSTPRCESS_COMMAND.
However yocto immediately goes into do_rootfs, and does not have a
fetch/unpack step (as oe-classic used to have).

I have worked around this by adding

python do_get_src () {
    bb.build.exec_func('base_do_fetch', d)
    bb.build.exec_func('base_do_unpack', d)
}
addtask do_get_src before do_rootfs

to my image recipe. I think it would be nice to have this
automatically done if a non-empty SRC_URI is found (but unfortunately
I am not enough of a python wiz to provide a patch).
Anyway that kept me moving.

The second issue is probably lib related. As I need a small footprint
(not too much storage available) my project uses uclibc.
When building the image I get some 15 or so of these:
| 	rtld(GNU_HASH) is needed by busybox-1.19.4-r6.ppce300c3
| 	rtld(GNU_HASH) is needed by i2c-tools-3.0.3-r0.ppce300c3
| 	rtld(GNU_HASH) is needed by libz1-1.2.6-r1.ppce300c3
...

I noticed that eglibc has this:
meta/recipes-core/eglibc/eglibc-package.inc:RPROVIDES_${PN} =
"glibc${PKGSUFFIX} rtld(GNU_HASH)"

but I did not find a similar RPROVIDES for uclibc.
Not sure whether it is missing there, or whether the dependencies for
the packages like busybox and libz1 are wrong.
Anyone any advice ?

Thanks, Frans



More information about the yocto mailing list