[yocto] crownbay-noemgd poky-image-minimal fails to build

Bruce Ashfield bruce.ashfield at windriver.com
Fri Jul 29 07:33:43 PDT 2011


On 07/29/11 10:11, Malcolm Crossley wrote:
> On 29/07/2011 15:02, Bruce Ashfield wrote:
>> On 07/29/11 09:57, Malcolm Crossley wrote:
>>> On 29/07/2011 14:12, Bruce Ashfield wrote:
>>>> On 07/29/11 06:05, Andre Haupt wrote:
>>>>> On Fri, Jul 29, 2011 at 09:23:59AM +0200, Andre Haupt wrote:
>>>>>> Hi all,
>>>>>>
>>>>>> I am trying to build a poky bernard image for crownbay-noemgd.
>>>>>> For this i checked out the bernard branch of both poky and meta-intel
>>>>>> from git.yoctoproject.org.
>>>>>>
>>>>>> Bitbake fails during the kernels compile_perf task complaining that
>>>>>> it can not
>>>>>> find libdw.h and bfd.h and that using /usr/local/include as include
>>>>>> location is unsafe for cross compilation (full log attached).
>>>>>>
>>>>>> What do i miss here?
>>>>>
>>>>> I did work around this with
>>>>>
>>>>> diff --git a/meta/recipes-kernel/linux/linux-yocto-stable_git.bb
>>>>> b/meta/recipes-
>>>>> index 3c1e669..85caa92 100644
>>>>> --- a/meta/recipes-kernel/linux/linux-yocto-stable_git.bb
>>>>> +++ b/meta/recipes-kernel/linux/linux-yocto-stable_git.bb
>>>>> @@ -42,4 +42,4 @@ KERNEL_FEATURES=features/netfilter
>>>>> addtask kernel_link_vmlinux after do_compile before do_install
>>>>> addtask validate_branches before do_patch after do_kernel_checkout
>>>>>
>>>>> -require linux-tools.inc
>>>>> +#require linux-tools.inc
>>>>>
>>>>>
>>>>> not sure that this is the right thing to do though.
>>>>
>>>> It's an acceptable work around to keep you building on your
>>>> local machine, assuming that you don't need perf. But the
>>>> linux-yocto recipes always want to provide perf, and hence
>>>> have that include.
>>>>
>>>> I'm trying to dust off my memory here. I know that this has
>>>> been seen, and I also know that this built fine in the bernard
>>>> release.
>>>>
>>>> The first part of the issue is the:
>>>>
>>>> Makefile:508: No libdw.h found or old libdw.h found, disables dwarf
>>>> support. Please install elfutils-devel/elfutils-dev
>>>>
>>>> We may have a missing host dependency in the checks. Have you
>>>> tried installing the relevant package for F13 ?
>>>>
>>>> As for the second, there's a patch in the 2.6.34 kernel tree
>>>> that is dealing with it:
>>>>
>>>> http://git.pokylinux.org/cgit/cgit.cgi/linux-yocto-2.6.34/commit/?h=standard&id=72ca49ab08b8eb475cec82a10049503602325791
>>>>
>>>>
>>>>
>>>> It sounds like there may be a SRCREV problem for the board that
>>>> isn't picking up that change. Can you confirm that this commit
>>>> is in your board branch ? You can check in your build directory
>>>> for linux.
>>>
>>> I have found that stable branch 2.6.34 contains a bug when trying to
>>> build the perf tools. I have a patch but I've not been able to upstream
>>> it yet, I've copy pasted it inline here, hopefully it doesn't wrap too
>>> badly:
>>
>> Just so I've got all the context here. This failure is
>> on top of the one you were asking about ? (the unsafe
>> / includes). And this is unique to the 2.6.34-stable
>> perf variant (i.e. no other newer kernel release has
>> the issue) ?
> The patch is required on 2.6.34-stable but not on 2.6.34 vanilla. I have
> not tested newer kernels but I believe there would be some compliants if
> it was still broken. So I think there was some specific backporting
> breakage with 2.6.34-stable. Without the patch I got this error on
> 2.6.34.6:

odd. Our autobuilders and local builds should have shown this,
since we are already past 2.6.34.6 for those boards.

We'll have to look into this one a bit more.

Bruce

>
> NOTE: make -j 2
> DESTDIR=/home/gefanuc/auto/main/build/work/ge-sbc612-angstrom-linux/linux-ge-2.6.x+22411-r0/image
> CC=powerpc-angstrom-linux-gcc LD=powerpc-angstrom-linux-ld
> Makefile:508: No libdw.h found or old libdw.h found, disables dwarf
> support. Please install elfutils-devel/elfutils-dev
> touch .perf.dev.null
> CC perf.o
> CC bench/sched-messaging.o
> bench/sched-messaging.c:34: error: expected '=', ',', ';', 'asm' or
> '__attribute__' before 'use_pipes'
> bench/sched-messaging.c:36: error: expected '=', ',', ';', 'asm' or
> '__attribute__' before 'thread_mode'
> bench/sched-messaging.c: In function 'fdpair':
> bench/sched-messaging.c:61: error: 'use_pipes' undeclared (first use in
> this function)
> bench/sched-messaging.c:61: error: (Each undeclared identifier is
> reported only once
> bench/sched-messaging.c:61: error: for each function it appears in.)
> bench/sched-messaging.c: In function 'receiver':
> bench/sched-messaging.c:120: error: 'thread_mode' undeclared (first use
> in this function)
> bench/sched-messaging.c: In function 'create_worker':
> bench/sched-messaging.c:149: error: 'thread_mode' undeclared (first use
> in this function)
> bench/sched-messaging.c: In function 'reap_worker':
> bench/sched-messaging.c:189: error: 'thread_mode' undeclared (first use
> in this function)
> bench/sched-messaging.c: In function 'group':
> bench/sched-messaging.c:232: error: 'thread_mode' undeclared (first use
> in this function)
> bench/sched-messaging.c: At top level:
> bench/sched-messaging.c:255: error: 'use_pipes' undeclared here (not in
> a function)
> bench/sched-messaging.c:257: error: 'thread_mode' undeclared here (not
> in a function)
> make: *** [bench/sched-messaging.o] Error 1
> make: *** Waiting for unfinished jobs....
>
> Regards
>
> Malcolm
>
>
>>
>> with those answers, I can appropriately deal with it
>> and vector it to the right places.
>>
>> Cheers,
>>
>> Bruce
>>
>>>
>>> Author: Malcolm Crossley <malcolm.crossley at ge.com>
>>> Date: Fri Jul 22 22:44:53 2011 +0100
>>>
>>> Kernel version 2.6.34.6. has a bug with regards to it's perf tool source
>>> files. This patch adds a missing include directive.
>>>
>>> Signed-off-by: Malcolm Crossley <malcolm.crossley at ge.com>
>>>
>>> diff --git a/tools/perf/perf.h b/tools/perf/perf.h
>>> index 6fb379b..3c497c5 100644
>>> --- a/tools/perf/perf.h
>>> +++ b/tools/perf/perf.h
>>> @@ -73,6 +73,7 @@
>>> #include <unistd.h>
>>> #include <sys/types.h>
>>> #include <sys/syscall.h>
>>> +#include <stdbool.h>
>>>
>>> #include "../../include/linux/perf_event.h"
>>> #include "util/types.h"
>>>
>>>
>>> Regards
>>>
>>> Malcolm
>>>
>>>>
>>>> Bruce
>>>>
>>>>>
>>>>> cheers,
>>>>>
>>>>> Andre
>>>>> _______________________________________________
>>>>> yocto mailing list
>>>>> yocto at yoctoproject.org
>>>>> https://lists.yoctoproject.org/listinfo/yocto
>>>>
>>>> _______________________________________________
>>>> yocto mailing list
>>>> yocto at yoctoproject.org
>>>> https://lists.yoctoproject.org/listinfo/yocto
>>>
>>> _______________________________________________
>>> yocto mailing list
>>> yocto at yoctoproject.org
>>> https://lists.yoctoproject.org/listinfo/yocto
>>
>




More information about the yocto mailing list