[meta-virtualization] stubs-32.h not found

M. Gregory mbgrego at tycho.nsa.gov
Tue Feb 2 13:59:24 PST 2016


On 02/02/2016 03:07 PM, M. Gregory wrote:
> I am working with the Xen recipes and I getting an odd behavior. The
> build will sometimes fail compiling Xen. The failure is a result of the
> absence of stubs-32.h (see error below). If I run a bitbake -c clean xen
> and build xen again everything builds as expected. According to the logs
> the do_stubs task runs and stubs-64.h is present in the sysroot, so
> stubs-32.h should have been created by the do_stubs task. I checked the
> timestamps on the do_populate_sysroot task of glibc and it was run after
> do_stubs, which indicates a dependence problem. I thought that adding
> glibc to the DEPENDS would fix the problem, but it did not. Any ideas? 
> -Machon
>
> fatal error: gnu/stubs-32.h: No such file or directory
>
So I read the Yocto manual and I understand why adding glibc to the
DEPENDS does not work. Specifically, DEPENDS only ensures "all the
dependencies listed have been built and have their contents in the
appropriate sysroots before the recipe's configure task is executed."
The do_stubs tasks running before configure. Adding the the line below
seems to fix the problem. Is this the correct solution?

Signed-off-by: Machon Gregory <mbgrego at tycho.nsa.gov>

diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 5555ed3..192bbee 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -783,6 +783,7 @@ do_stubs() {
 }

 addtask stubs after do_patch before do_configure
+do_stubs[depends] += "glibc:do_populate_sysroot"

 do_configure() {



More information about the meta-virtualization mailing list