[yocto] do_rootfs missing package (ipk) or not found in base feeds (rpm)

Paul Eggleton paul.eggleton at linux.intel.com
Wed Jan 7 09:58:47 PST 2015


Hi Yannick,

On Wednesday 07 January 2015 17:20:08 Koehler, Yannick wrote:
>   I created my second recipe in Yocto, it is a shared library.
> 
> --
> SUMMARY = "libutil"
> 
> LICENSE = "LGPLv2.1+"
> LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1"
> 
> SRC_URI = "file://libutil-${PV}-Source.tar.bz2"
> SRC_URI[md5sum] = "???"
> SRC_URI[sha256sum] = "???"
> 
> S = "${WORKDIR}/libutil-${PV}-Source"
> 
> DEPENDS = "libpcap"
> 
> inherit cmake
> --
> 
>   I added to conf/distro/poky.conf the following
> 
> --
> IMAGE_INSTALL_append = " libutil"
> --
> 
>    It build nicely and install some headers and a shared library.  Yet, when
> Yocto calls the do_rootfs, it fails and claim that the package is not
> found.
> 
>    I did a "find tmp -name libutil*" and see that  I have the following:
> 
> ../build/tmp/deploy/rpm/i586/libutil-staticdev-1.0.0-r0.i586.rpm
> ../build/tmp/deploy/rpm/i586/libutil-dev-1.0.0-r0.i586.rpm
> ../build/tmp/deploy/rpm/i586/libutil-dbg-1.0.0-r0.i586.rpm
> ../build/tmp/deploy/ipk/i586/libutil-dbg_1.0.0-r0_i586.ipk
> ../build/tmp/deploy/ipk/i586/libutil-staticdev_1.0.0-r0_i586.ipk
> ../build/tmp/deploy/ipk/i586/libutil-dev_1.0.0-r0_i586.ipk
> 
>   I am unclear what triggered the package to be named -dev or -staticdev and
> actually having no package named libutil-1.0.0-r0.i586.rpm as it seems that
> do_rootfs is looking for.
> 
>   I have tried with both ipk and rpm without success.  I searched google for
> some answer but could not get a solution to this problem.  My
> libutil-1.0.0-Source.tar.bz2 generate a libutil.so, libutil-static.a and
> headers, all of which is install properly when using cmake/make/make
> install. I am using a local copy of Yocto "Dizzy".

What's almost certainly happening is your main libutil package is ending up 
empty; by default packages are not actually written out if they are empty (the 
-dev, -dbg and -staticdev are always written out). You can verify this by 
looking under packages-split under the workdir for the recipe 
(tmp/work/<architecture>/libutil/1.0.0-r0/). Either this is because files you 
want in the main package aren't actually being built, or they are ending up in 
one of the other packages. During do_package, the build system looks through 
packages in the order they are mentioned in the PACKAGES variable, and the 
first package whose FILES value matches the file gets the file (you can see the 
default values of PACKAGES and FILES in meta/conf/bitbake.conf). So either you 
need to fix it so that the right files are being produced/installed, or adjust 
PACKAGES / FILES as appropriate.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the yocto mailing list