All of lore.kernel.org
 help / color / mirror / Atom feed
* Debugging a build issue in an isolated enviroment
@ 2017-11-01 17:38 Alan Martinovic
  2017-11-01 18:05 ` Burton, Ross
  2017-11-01 19:05 ` Alex Kiernan
  0 siblings, 2 replies; 11+ messages in thread
From: Alan Martinovic @ 2017-11-01 17:38 UTC (permalink / raw)
  To: Yocto-mailing-list

I'm just upgrading to pyro and have some issues with u-boot-fw-utils.

The error fails at do_compile stage which looks like this:

    do_compile () {
            oe_runmake ${UBOOT_MACHINE}
            oe_runmake env
    }


The error is:

Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: make -j 16 CROSS_COMPILE=arm-senic-linux-gnueabi-
CC=arm-senic-linux-gnueabi-       gcc  -march=armv7ve -mfpu=neon-vfpv4
 -mfloat-abi=hard -mcpu=cortex-a7
--sysroot=/home/alan/senic-os-update/build/tmp-glibc/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot
 -O2 -pipe -g -feliminate-unused-debug-types
-fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glibc/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0=/usr/src/debug/u-boot-fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0
-fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glibc/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot-native=
-fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glibc/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot=
 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed V=1
| ERROR: oe_runmake failed
| make -f ./Makefile silentoldconfig
| make -f ./scripts/Makefile.build obj=scripts/basic
|   cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer      -o scripts/basic/fixdep
scripts/basic/fixdep.c
| /bin/sh: 1: cc: not found


I would assume this is a to specific error to ask help about. It seems
that the compiler isn't being called correctly (it's called as cc,
which isn't the full compiler name).
Suggestions are welcome but that isn't the reason for my post.

Is there a way to run the above listed make command with the same
environment as it is run when the error is produced?

I have tried:

devtool modify  u-boot-fw-utils

but it doesn't bring me to an environment where I can reproduce the
error by executing the make call manually.
I get different non related errors:

make: invalid option -- 'a'
make: invalid option -- 'c'
make: invalid option -- '='
make: invalid option -- 'a'
make: invalid option -- '7'
make: invalid option -- 'c'
make: invalid option -- 'u'
make: invalid option -- '='

and the make I'm using comes from /usr/bin/make instead of somewhere from yocto.

Any ideas on how to approach?

Be Well,
Alan


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-01 17:38 Debugging a build issue in an isolated enviroment Alan Martinovic
@ 2017-11-01 18:05 ` Burton, Ross
  2017-11-01 19:05 ` Alex Kiernan
  1 sibling, 0 replies; 11+ messages in thread
From: Burton, Ross @ 2017-11-01 18:05 UTC (permalink / raw)
  To: Alan Martinovic; +Cc: Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 538 bytes --]

On 1 November 2017 at 17:38, Alan Martinovic <alan.martinovic@senic.com>
wrote:

> Is there a way to run the above listed make command with the same
> environment as it is run when the error is produced?
>

$ bitbake <recipe> -c devshell

This drops you in a new terminal with the same environment that bitbake
sets up, and in ../temp/ you'll find run.do_compile and so on, which are
the scripts that bitbake runs for each task.

(you need to fix your recipe so that it forces the use of ${BUILD_CC}
instead of cc)

Ross

[-- Attachment #2: Type: text/html, Size: 923 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-01 17:38 Debugging a build issue in an isolated enviroment Alan Martinovic
  2017-11-01 18:05 ` Burton, Ross
@ 2017-11-01 19:05 ` Alex Kiernan
  2017-11-02 11:05   ` Alan Martinovic
  1 sibling, 1 reply; 11+ messages in thread
From: Alex Kiernan @ 2017-11-01 19:05 UTC (permalink / raw)
  To: Alan Martinovic; +Cc: Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 3068 bytes --]

On 1 November 2017 at 17:38, Alan Martinovic <alan.martinovic@senic.com>
wrote:

> I'm just upgrading to pyro and have some issues with u-boot-fw-utils.
>
> The error fails at do_compile stage which looks like this:
>
>     do_compile () {
>             oe_runmake ${UBOOT_MACHINE}
>             oe_runmake env
>     }
>
>
> The error is:
>
> Log data follows:
> | DEBUG: Executing shell function do_compile
> | NOTE: make -j 16 CROSS_COMPILE=arm-senic-linux-gnueabi-
> CC=arm-senic-linux-gnueabi-       gcc  -march=armv7ve -mfpu=neon-vfpv4
>  -mfloat-abi=hard -mcpu=cortex-a7
> --sysroot=/home/alan/senic-os-update/build/tmp-glibc/work/
> senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/
> v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot
>  -O2 -pipe -g -feliminate-unused-debug-types
> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-
> glibc/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-
> utils-senic/v2017.03+gitAUTOINC+5233f17333-r0=/usr/
> src/debug/u-boot-fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0
> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-
> glibc/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-
> utils-senic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot-native=
> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-
> glibc/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-
> utils-senic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot=
>  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed V=1
> | ERROR: oe_runmake failed
> | make -f ./Makefile silentoldconfig
> | make -f ./scripts/Makefile.build obj=scripts/basic
> |   cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2
> -fomit-frame-pointer      -o scripts/basic/fixdep
> scripts/basic/fixdep.c
> | /bin/sh: 1: cc: not found
>
>
> I would assume this is a to specific error to ask help about. It seems
> that the compiler isn't being called correctly (it's called as cc,
> which isn't the full compiler name).
> Suggestions are welcome but that isn't the reason for my post.
>
>
Guessing... apply this in your recipe:

http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-bsp/u-boot/files/default-gcc.patch?h=pyro

-- 
Alex Kiernan
Senior Engineering Manager

-- 
hivehome.com <http://www.hivehome.com>



Hive | London | Cambridge | Houston | Toronto
The information contained in or attached to this email is confidential and 
intended only for the use of the individual(s) to which it is addressed. It 
may contain information which is confidential and/or covered by legal 
professional or other privilege. The views expressed in this email are not 
necessarily the views of Centrica plc, and the company, its directors, 
officers or employees make no representation or accept any liability for 
their accuracy or completeness unless expressly stated to the contrary. 
Centrica Connected Home Limited (company no: 5782908), registered in 
England and Wales with its registered office at Millstream, Maidenhead 
Road, Windsor, Berkshire SL4 5GD.

[-- Attachment #2: Type: text/html, Size: 4990 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-01 19:05 ` Alex Kiernan
@ 2017-11-02 11:05   ` Alan Martinovic
  2017-11-02 11:13     ` Burton, Ross
  0 siblings, 1 reply; 11+ messages in thread
From: Alan Martinovic @ 2017-11-02 11:05 UTC (permalink / raw)
  To: Alex Kiernan, ross.burton; +Cc: Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 4309 bytes --]

Thanks for the suggestions
Am currently implementing both of them and am trying to understand how the
patching is done.

In the temp directory I can see all the tasks.
For some reasons the patch wasn't applied correctly and I'm debugging why.

I have patches from before which are being correctly applied, one of them
being "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch".
Am using that one just as a reference for this example.
I want to see the steps done to apply the patch so I do:

    temp$ grep -r 0001-sun8i-configs *
    temp$ grep -r quilt *

I am expecting to see some commands related to the patching process in one
of the run scripts.
For example,  "quilt" followed by some arguments or
"0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch" being
applied
by some other tool instead of quilt.

I only end up with some findings in the log files (log.do_fetch,
log.do_unpack which don't tell me much).


Where are the steps that apply the patches located?

Be Well :)
Alan




I've gotten to the

On Wed, Nov 1, 2017 at 8:05 PM, Alex Kiernan <alex.kiernan@hivehome.com>
wrote:

> On 1 November 2017 at 17:38, Alan Martinovic <alan.martinovic@senic.com>
> wrote:
>
>> I'm just upgrading to pyro and have some issues with u-boot-fw-utils.
>>
>> The error fails at do_compile stage which looks like this:
>>
>>     do_compile () {
>>             oe_runmake ${UBOOT_MACHINE}
>>             oe_runmake env
>>     }
>>
>>
>> The error is:
>>
>> Log data follows:
>> | DEBUG: Executing shell function do_compile
>> | NOTE: make -j 16 CROSS_COMPILE=arm-senic-linux-gnueabi-
>> CC=arm-senic-linux-gnueabi-       gcc  -march=armv7ve -mfpu=neon-vfpv4
>>  -mfloat-abi=hard -mcpu=cortex-a7
>> --sysroot=/home/alan/senic-os-update/build/tmp-glibc/work/se
>> nic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017
>> .03+gitAUTOINC+5233f17333-r0/recipe-sysroot
>>  -O2 -pipe -g -feliminate-unused-debug-types
>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-
>> senic/v2017.03+gitAUTOINC+5233f17333-r0=/usr/src/debug/
>> u-boot-fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0
>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-
>> senic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot-native=
>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-
>> senic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot=
>>  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed V=1
>> | ERROR: oe_runmake failed
>> | make -f ./Makefile silentoldconfig
>> | make -f ./scripts/Makefile.build obj=scripts/basic
>> |   cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2
>> -fomit-frame-pointer      -o scripts/basic/fixdep
>> scripts/basic/fixdep.c
>> | /bin/sh: 1: cc: not found
>>
>>
>> I would assume this is a to specific error to ask help about. It seems
>> that the compiler isn't being called correctly (it's called as cc,
>> which isn't the full compiler name).
>> Suggestions are welcome but that isn't the reason for my post.
>>
>>
> Guessing... apply this in your recipe:
>
> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/
> recipes-bsp/u-boot/files/default-gcc.patch?h=pyro
>
> --
> Alex Kiernan
> Senior Engineering Manager
>
> hivehome.com <http://www.hivehome.com>
>
>
>
> Hive | London | Cambridge | Houston | Toronto
> The information contained in or attached to this email is confidential and
> intended only for the use of the individual(s) to which it is addressed. It
> may contain information which is confidential and/or covered by legal
> professional or other privilege. The views expressed in this email are not
> necessarily the views of Centrica plc, and the company, its directors,
> officers or employees make no representation or accept any liability for
> their accuracy or completeness unless expressly stated to the contrary.
> Centrica Connected Home Limited (company no: 5782908), registered in
> England and Wales with its registered office at Millstream, Maidenhead
> Road, Windsor, Berkshire SL4 5GD.
>

[-- Attachment #2: Type: text/html, Size: 7017 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-02 11:05   ` Alan Martinovic
@ 2017-11-02 11:13     ` Burton, Ross
  2017-11-02 11:46       ` Alan Martinovic
  0 siblings, 1 reply; 11+ messages in thread
From: Burton, Ross @ 2017-11-02 11:13 UTC (permalink / raw)
  To: Alan Martinovic; +Cc: Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 4712 bytes --]

The patching is done by a bbclass (patch.bbclass) and helper modules
(meta/oe/lib/patch.py), so you can't execute it like a shell task (such as
do_compile).

Ross

On 2 November 2017 at 11:05, Alan Martinovic <alan.martinovic@senic.com>
wrote:

> Thanks for the suggestions
> Am currently implementing both of them and am trying to understand how the
> patching is done.
>
> In the temp directory I can see all the tasks.
> For some reasons the patch wasn't applied correctly and I'm debugging why.
>
> I have patches from before which are being correctly applied, one of them
> being "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch".
> Am using that one just as a reference for this example.
> I want to see the steps done to apply the patch so I do:
>
>     temp$ grep -r 0001-sun8i-configs *
>     temp$ grep -r quilt *
>
> I am expecting to see some commands related to the patching process in one
> of the run scripts.
> For example,  "quilt" followed by some arguments or
> "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch" being
> applied
> by some other tool instead of quilt.
>
> I only end up with some findings in the log files (log.do_fetch,
> log.do_unpack which don't tell me much).
>
>
> Where are the steps that apply the patches located?
>
> Be Well :)
> Alan
>
>
>
>
> I've gotten to the
>
> On Wed, Nov 1, 2017 at 8:05 PM, Alex Kiernan <alex.kiernan@hivehome.com>
> wrote:
>
>> On 1 November 2017 at 17:38, Alan Martinovic <alan.martinovic@senic.com>
>> wrote:
>>
>>> I'm just upgrading to pyro and have some issues with u-boot-fw-utils.
>>>
>>> The error fails at do_compile stage which looks like this:
>>>
>>>     do_compile () {
>>>             oe_runmake ${UBOOT_MACHINE}
>>>             oe_runmake env
>>>     }
>>>
>>>
>>> The error is:
>>>
>>> Log data follows:
>>> | DEBUG: Executing shell function do_compile
>>> | NOTE: make -j 16 CROSS_COMPILE=arm-senic-linux-gnueabi-
>>> CC=arm-senic-linux-gnueabi-       gcc  -march=armv7ve -mfpu=neon-vfpv4
>>>  -mfloat-abi=hard -mcpu=cortex-a7
>>> --sysroot=/home/alan/senic-os-update/build/tmp-glibc/work/se
>>> nic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017
>>> .03+gitAUTOINC+5233f17333-r0/recipe-sysroot
>>>  -O2 -pipe -g -feliminate-unused-debug-types
>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>> nic/v2017.03+gitAUTOINC+5233f17333-r0=/usr/src/debug/u-boot-
>>> fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0
>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot-native=
>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot=
>>>  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed V=1
>>> | ERROR: oe_runmake failed
>>> | make -f ./Makefile silentoldconfig
>>> | make -f ./scripts/Makefile.build obj=scripts/basic
>>> |   cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2
>>> -fomit-frame-pointer      -o scripts/basic/fixdep
>>> scripts/basic/fixdep.c
>>> | /bin/sh: 1: cc: not found
>>>
>>>
>>> I would assume this is a to specific error to ask help about. It seems
>>> that the compiler isn't being called correctly (it's called as cc,
>>> which isn't the full compiler name).
>>> Suggestions are welcome but that isn't the reason for my post.
>>>
>>>
>> Guessing... apply this in your recipe:
>>
>> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/rec
>> ipes-bsp/u-boot/files/default-gcc.patch?h=pyro
>>
>> --
>> Alex Kiernan
>> Senior Engineering Manager
>>
>> hivehome.com <http://www.hivehome.com>
>>
>>
>>
>> Hive | London | Cambridge | Houston | Toronto
>> The information contained in or attached to this email is confidential
>> and intended only for the use of the individual(s) to which it is
>> addressed. It may contain information which is confidential and/or covered
>> by legal professional or other privilege. The views expressed in this email
>> are not necessarily the views of Centrica plc, and the company, its
>> directors, officers or employees make no representation or accept any
>> liability for their accuracy or completeness unless expressly stated to the
>> contrary.
>> Centrica Connected Home Limited (company no: 5782908), registered in
>> England and Wales with its registered office at Millstream, Maidenhead
>> Road, Windsor, Berkshire SL4 5GD.
>>
>
>

[-- Attachment #2: Type: text/html, Size: 7732 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-02 11:13     ` Burton, Ross
@ 2017-11-02 11:46       ` Alan Martinovic
  2017-11-02 11:50         ` Burton, Ross
  0 siblings, 1 reply; 11+ messages in thread
From: Alan Martinovic @ 2017-11-02 11:46 UTC (permalink / raw)
  To: Burton, Ross, Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 5183 bytes --]

I see, so I can't use the devshell to debug why the patch hasn't been
correctly applied.

The answer you gave help for debugging actual build and configure problems.
Debugging patching seems to be out scope for this thread.
Will start a new one.


On Thu, Nov 2, 2017 at 12:13 PM, Burton, Ross <ross.burton@intel.com> wrote:

> The patching is done by a bbclass (patch.bbclass) and helper modules
> (meta/oe/lib/patch.py), so you can't execute it like a shell task (such as
> do_compile).
>
> Ross
>
> On 2 November 2017 at 11:05, Alan Martinovic <alan.martinovic@senic.com>
> wrote:
>
>> Thanks for the suggestions
>> Am currently implementing both of them and am trying to understand how
>> the patching is done.
>>
>> In the temp directory I can see all the tasks.
>> For some reasons the patch wasn't applied correctly and I'm debugging why.
>>
>> I have patches from before which are being correctly applied, one of them
>> being "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch".
>> Am using that one just as a reference for this example.
>> I want to see the steps done to apply the patch so I do:
>>
>>     temp$ grep -r 0001-sun8i-configs *
>>     temp$ grep -r quilt *
>>
>> I am expecting to see some commands related to the patching process in
>> one of the run scripts.
>> For example,  "quilt" followed by some arguments or
>> "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch" being
>> applied
>> by some other tool instead of quilt.
>>
>> I only end up with some findings in the log files (log.do_fetch,
>> log.do_unpack which don't tell me much).
>>
>>
>> Where are the steps that apply the patches located?
>>
>> Be Well :)
>> Alan
>>
>>
>>
>>
>> I've gotten to the
>>
>> On Wed, Nov 1, 2017 at 8:05 PM, Alex Kiernan <alex.kiernan@hivehome.com>
>> wrote:
>>
>>> On 1 November 2017 at 17:38, Alan Martinovic <alan.martinovic@senic.com>
>>> wrote:
>>>
>>>> I'm just upgrading to pyro and have some issues with u-boot-fw-utils.
>>>>
>>>> The error fails at do_compile stage which looks like this:
>>>>
>>>>     do_compile () {
>>>>             oe_runmake ${UBOOT_MACHINE}
>>>>             oe_runmake env
>>>>     }
>>>>
>>>>
>>>> The error is:
>>>>
>>>> Log data follows:
>>>> | DEBUG: Executing shell function do_compile
>>>> | NOTE: make -j 16 CROSS_COMPILE=arm-senic-linux-gnueabi-
>>>> CC=arm-senic-linux-gnueabi-       gcc  -march=armv7ve -mfpu=neon-vfpv4
>>>>  -mfloat-abi=hard -mcpu=cortex-a7
>>>> --sysroot=/home/alan/senic-os-update/build/tmp-glibc/work/se
>>>> nic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017
>>>> .03+gitAUTOINC+5233f17333-r0/recipe-sysroot
>>>>  -O2 -pipe -g -feliminate-unused-debug-types
>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0=/usr/src/debug/u-boot-
>>>> fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0
>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot-native=
>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot=
>>>>  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed V=1
>>>> | ERROR: oe_runmake failed
>>>> | make -f ./Makefile silentoldconfig
>>>> | make -f ./scripts/Makefile.build obj=scripts/basic
>>>> |   cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2
>>>> -fomit-frame-pointer      -o scripts/basic/fixdep
>>>> scripts/basic/fixdep.c
>>>> | /bin/sh: 1: cc: not found
>>>>
>>>>
>>>> I would assume this is a to specific error to ask help about. It seems
>>>> that the compiler isn't being called correctly (it's called as cc,
>>>> which isn't the full compiler name).
>>>> Suggestions are welcome but that isn't the reason for my post.
>>>>
>>>>
>>> Guessing... apply this in your recipe:
>>>
>>> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/rec
>>> ipes-bsp/u-boot/files/default-gcc.patch?h=pyro
>>>
>>> --
>>> Alex Kiernan
>>> Senior Engineering Manager
>>>
>>> hivehome.com <http://www.hivehome.com>
>>>
>>>
>>>
>>> Hive | London | Cambridge | Houston | Toronto
>>> The information contained in or attached to this email is confidential
>>> and intended only for the use of the individual(s) to which it is
>>> addressed. It may contain information which is confidential and/or covered
>>> by legal professional or other privilege. The views expressed in this email
>>> are not necessarily the views of Centrica plc, and the company, its
>>> directors, officers or employees make no representation or accept any
>>> liability for their accuracy or completeness unless expressly stated to the
>>> contrary.
>>> Centrica Connected Home Limited (company no: 5782908), registered in
>>> England and Wales with its registered office at Millstream, Maidenhead
>>> Road, Windsor, Berkshire SL4 5GD.
>>>
>>
>>
>

[-- Attachment #2: Type: text/html, Size: 8905 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-02 11:46       ` Alan Martinovic
@ 2017-11-02 11:50         ` Burton, Ross
  2017-11-02 12:51           ` Alan Martinovic
  0 siblings, 1 reply; 11+ messages in thread
From: Burton, Ross @ 2017-11-02 11:50 UTC (permalink / raw)
  To: Alan Martinovic; +Cc: Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 5641 bytes --]

What do you mean by patches not being applied correctly?  temp/log.do_patch
has the output from patch so that might show that you've a patch that
applies with lots of fuzz and is applied incorrectly.

Ross

On 2 November 2017 at 11:46, Alan Martinovic <alan.martinovic@senic.com>
wrote:

> I see, so I can't use the devshell to debug why the patch hasn't been
> correctly applied.
>
> The answer you gave help for debugging actual build and configure problems.
> Debugging patching seems to be out scope for this thread.
> Will start a new one.
>
>
> On Thu, Nov 2, 2017 at 12:13 PM, Burton, Ross <ross.burton@intel.com>
> wrote:
>
>> The patching is done by a bbclass (patch.bbclass) and helper modules
>> (meta/oe/lib/patch.py), so you can't execute it like a shell task (such as
>> do_compile).
>>
>> Ross
>>
>> On 2 November 2017 at 11:05, Alan Martinovic <alan.martinovic@senic.com>
>> wrote:
>>
>>> Thanks for the suggestions
>>> Am currently implementing both of them and am trying to understand how
>>> the patching is done.
>>>
>>> In the temp directory I can see all the tasks.
>>> For some reasons the patch wasn't applied correctly and I'm debugging
>>> why.
>>>
>>> I have patches from before which are being correctly applied, one of
>>> them being "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.p
>>> atch".
>>> Am using that one just as a reference for this example.
>>> I want to see the steps done to apply the patch so I do:
>>>
>>>     temp$ grep -r 0001-sun8i-configs *
>>>     temp$ grep -r quilt *
>>>
>>> I am expecting to see some commands related to the patching process in
>>> one of the run scripts.
>>> For example,  "quilt" followed by some arguments or
>>> "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch" being
>>> applied
>>> by some other tool instead of quilt.
>>>
>>> I only end up with some findings in the log files (log.do_fetch,
>>> log.do_unpack which don't tell me much).
>>>
>>>
>>> Where are the steps that apply the patches located?
>>>
>>> Be Well :)
>>> Alan
>>>
>>>
>>>
>>>
>>> I've gotten to the
>>>
>>> On Wed, Nov 1, 2017 at 8:05 PM, Alex Kiernan <alex.kiernan@hivehome.com>
>>> wrote:
>>>
>>>> On 1 November 2017 at 17:38, Alan Martinovic <alan.martinovic@senic.com
>>>> > wrote:
>>>>
>>>>> I'm just upgrading to pyro and have some issues with u-boot-fw-utils.
>>>>>
>>>>> The error fails at do_compile stage which looks like this:
>>>>>
>>>>>     do_compile () {
>>>>>             oe_runmake ${UBOOT_MACHINE}
>>>>>             oe_runmake env
>>>>>     }
>>>>>
>>>>>
>>>>> The error is:
>>>>>
>>>>> Log data follows:
>>>>> | DEBUG: Executing shell function do_compile
>>>>> | NOTE: make -j 16 CROSS_COMPILE=arm-senic-linux-gnueabi-
>>>>> CC=arm-senic-linux-gnueabi-       gcc  -march=armv7ve -mfpu=neon-vfpv4
>>>>>  -mfloat-abi=hard -mcpu=cortex-a7
>>>>> --sysroot=/home/alan/senic-os-update/build/tmp-glibc/work/se
>>>>> nic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017
>>>>> .03+gitAUTOINC+5233f17333-r0/recipe-sysroot
>>>>>  -O2 -pipe -g -feliminate-unused-debug-types
>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0=/usr/src/debug/u-boot-
>>>>> fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0
>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot-native=
>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot=
>>>>>  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed V=1
>>>>> | ERROR: oe_runmake failed
>>>>> | make -f ./Makefile silentoldconfig
>>>>> | make -f ./scripts/Makefile.build obj=scripts/basic
>>>>> |   cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2
>>>>> -fomit-frame-pointer      -o scripts/basic/fixdep
>>>>> scripts/basic/fixdep.c
>>>>> | /bin/sh: 1: cc: not found
>>>>>
>>>>>
>>>>> I would assume this is a to specific error to ask help about. It seems
>>>>> that the compiler isn't being called correctly (it's called as cc,
>>>>> which isn't the full compiler name).
>>>>> Suggestions are welcome but that isn't the reason for my post.
>>>>>
>>>>>
>>>> Guessing... apply this in your recipe:
>>>>
>>>> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/rec
>>>> ipes-bsp/u-boot/files/default-gcc.patch?h=pyro
>>>>
>>>> --
>>>> Alex Kiernan
>>>> Senior Engineering Manager
>>>>
>>>> hivehome.com <http://www.hivehome.com>
>>>>
>>>>
>>>>
>>>> Hive | London | Cambridge | Houston | Toronto
>>>> The information contained in or attached to this email is confidential
>>>> and intended only for the use of the individual(s) to which it is
>>>> addressed. It may contain information which is confidential and/or covered
>>>> by legal professional or other privilege. The views expressed in this email
>>>> are not necessarily the views of Centrica plc, and the company, its
>>>> directors, officers or employees make no representation or accept any
>>>> liability for their accuracy or completeness unless expressly stated to the
>>>> contrary.
>>>> Centrica Connected Home Limited (company no: 5782908), registered in
>>>> England and Wales with its registered office at Millstream, Maidenhead
>>>> Road, Windsor, Berkshire SL4 5GD.
>>>>
>>>
>>>
>>
>

[-- Attachment #2: Type: text/html, Size: 9753 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-02 11:50         ` Burton, Ross
@ 2017-11-02 12:51           ` Alan Martinovic
  2017-11-02 13:31             ` Alan Martinovic
  0 siblings, 1 reply; 11+ messages in thread
From: Alan Martinovic @ 2017-11-02 12:51 UTC (permalink / raw)
  To: Burton, Ross; +Cc: Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 8744 bytes --]

That I can't see the changes for that particular patch in the source (by
manually checking the source for the changes).
Other patches are applied correctly, I can trace them in the sources.

I have no "temp/log.do_patch" and find notions of patches (both the
successfully and unsuccessfully applied ones) only in the log.do_fetch and
log.do_unpack steps.

Is there a way to grep through how a recipe looks like when all the
inherited parts have been expanded?
There seems to be a do_patch task (
http://www.yoctoproject.org/docs/2.3/ref-manual/ref-manual.html#patching-dev-environment
)
which I would grep for in that expanded recipe.

For more insight, the current recipe (the one I'd like to see expanded)
looks like this:

$ cat u-boot-fw-utils-senic_2017.03.bb
SUMMARY = "U-Boot bootloader fw_printenv/setenv utilities"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM =
"file://Licenses/README;md5=a2c678cfd4a4d97135585cad908541c6"
SECTION = "bootloader"
DEPENDS = "mtd-utils"

require recipes-bsp/u-boot/u-boot-fw-utils-mender.inc

SRCBRANCH = "senic/v2017.03"
SRC_URI = "git://
git@github.com/getsenic/senic-os-uboot.git;protocol=ssh;branch=${SRCBRANCH};
\
           file://boot.cmd \

 file://0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch \
           file://0002-sunxi-common-Remove-variables-used-by-Mender.patch \
           file://default-gcc.patch"

SRC_URI_remove =
"file://0003-Integration-of-Mender-boot-code-into-U-Boot.patch"
SRC_URI_append = "
file://0001-Integration-of-Mender-boot-code-into-U-Boot.patch"

SRCREV = "5233f173335a61b1e2b9120c55422a8d60ff7ffe"
PV = "v2017.03+git${SRCPV}"
S = "${WORKDIR}/git"

# For Mender.io integration
BOOTENV_SIZE = "0x20000"
PROVIDES += "u-boot-fw-utils"
RPROVIDES_${PN} += "u-boot-fw-utils"

INSANE_SKIP_${PN} = "already-stripped"
EXTRA_OEMAKE_class-target = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${CC}
${CFLAGS} ${LDFLAGS}" V=1'
EXTRA_OEMAKE_class-cross = 'ARCH=${TARGET_ARCH} CC="${CC} ${CFLAGS}
${LDFLAGS}" V=1'

inherit uboot-config

do_compile () {
        oe_runmake ${UBOOT_MACHINE}
        oe_runmake env
}

do_install () {
        install -d ${D}${base_sbindir}
        install -d ${D}${sysconfdir}
        install -m 755 ${S}/tools/env/fw_printenv
${D}${base_sbindir}/fw_printenv
        install -m 755 ${S}/tools/env/fw_printenv
${D}${base_sbindir}/fw_setenv
        install -m 0644 ${S}/tools/env/fw_env.config
${D}${sysconfdir}/fw_env.config
}

do_install_class-cross () {
        install -d ${D}${bindir_cross}
        install -m 755 ${S}/tools/env/fw_printenv
${D}${bindir_cross}/fw_printenv
        install -m 755 ${S}/tools/env/fw_printenv
${D}${bindir_cross}/fw_setenv
}

SYSROOT_DIRS_append_class-cross = " ${bindir_cross}"

PACKAGE_ARCH = "${MACHINE_ARCH}"
BBCLASSEXTEND = "cross"




On Thu, Nov 2, 2017 at 12:50 PM, Burton, Ross <ross.burton@intel.com> wrote:

> What do you mean by patches not being applied correctly?
>  temp/log.do_patch has the output from patch so that might show that you've
> a patch that applies with lots of fuzz and is applied incorrectly.
>
> Ross
>
> On 2 November 2017 at 11:46, Alan Martinovic <alan.martinovic@senic.com>
> wrote:
>
>> I see, so I can't use the devshell to debug why the patch hasn't been
>> correctly applied.
>>
>> The answer you gave help for debugging actual build and configure
>> problems.
>> Debugging patching seems to be out scope for this thread.
>> Will start a new one.
>>
>>
>> On Thu, Nov 2, 2017 at 12:13 PM, Burton, Ross <ross.burton@intel.com>
>> wrote:
>>
>>> The patching is done by a bbclass (patch.bbclass) and helper modules
>>> (meta/oe/lib/patch.py), so you can't execute it like a shell task (such as
>>> do_compile).
>>>
>>> Ross
>>>
>>> On 2 November 2017 at 11:05, Alan Martinovic <alan.martinovic@senic.com>
>>> wrote:
>>>
>>>> Thanks for the suggestions
>>>> Am currently implementing both of them and am trying to understand how
>>>> the patching is done.
>>>>
>>>> In the temp directory I can see all the tasks.
>>>> For some reasons the patch wasn't applied correctly and I'm debugging
>>>> why.
>>>>
>>>> I have patches from before which are being correctly applied, one of
>>>> them being "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.p
>>>> atch".
>>>> Am using that one just as a reference for this example.
>>>> I want to see the steps done to apply the patch so I do:
>>>>
>>>>     temp$ grep -r 0001-sun8i-configs *
>>>>     temp$ grep -r quilt *
>>>>
>>>> I am expecting to see some commands related to the patching process in
>>>> one of the run scripts.
>>>> For example,  "quilt" followed by some arguments or
>>>> "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch"
>>>> being applied
>>>> by some other tool instead of quilt.
>>>>
>>>> I only end up with some findings in the log files (log.do_fetch,
>>>> log.do_unpack which don't tell me much).
>>>>
>>>>
>>>> Where are the steps that apply the patches located?
>>>>
>>>> Be Well :)
>>>> Alan
>>>>
>>>>
>>>>
>>>>
>>>> I've gotten to the
>>>>
>>>> On Wed, Nov 1, 2017 at 8:05 PM, Alex Kiernan <alex.kiernan@hivehome.com
>>>> > wrote:
>>>>
>>>>> On 1 November 2017 at 17:38, Alan Martinovic <
>>>>> alan.martinovic@senic.com> wrote:
>>>>>
>>>>>> I'm just upgrading to pyro and have some issues with u-boot-fw-utils.
>>>>>>
>>>>>> The error fails at do_compile stage which looks like this:
>>>>>>
>>>>>>     do_compile () {
>>>>>>             oe_runmake ${UBOOT_MACHINE}
>>>>>>             oe_runmake env
>>>>>>     }
>>>>>>
>>>>>>
>>>>>> The error is:
>>>>>>
>>>>>> Log data follows:
>>>>>> | DEBUG: Executing shell function do_compile
>>>>>> | NOTE: make -j 16 CROSS_COMPILE=arm-senic-linux-gnueabi-
>>>>>> CC=arm-senic-linux-gnueabi-       gcc  -march=armv7ve -mfpu=neon-vfpv4
>>>>>>  -mfloat-abi=hard -mcpu=cortex-a7
>>>>>> --sysroot=/home/alan/senic-os-update/build/tmp-glibc/work/se
>>>>>> nic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017
>>>>>> .03+gitAUTOINC+5233f17333-r0/recipe-sysroot
>>>>>>  -O2 -pipe -g -feliminate-unused-debug-types
>>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0=/usr/src/debug/u-boot-
>>>>>> fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0
>>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot-native=
>>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot=
>>>>>>  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed V=1
>>>>>> | ERROR: oe_runmake failed
>>>>>> | make -f ./Makefile silentoldconfig
>>>>>> | make -f ./scripts/Makefile.build obj=scripts/basic
>>>>>> |   cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2
>>>>>> -fomit-frame-pointer      -o scripts/basic/fixdep
>>>>>> scripts/basic/fixdep.c
>>>>>> | /bin/sh: 1: cc: not found
>>>>>>
>>>>>>
>>>>>> I would assume this is a to specific error to ask help about. It seems
>>>>>> that the compiler isn't being called correctly (it's called as cc,
>>>>>> which isn't the full compiler name).
>>>>>> Suggestions are welcome but that isn't the reason for my post.
>>>>>>
>>>>>>
>>>>> Guessing... apply this in your recipe:
>>>>>
>>>>> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/rec
>>>>> ipes-bsp/u-boot/files/default-gcc.patch?h=pyro
>>>>>
>>>>> --
>>>>> Alex Kiernan
>>>>> Senior Engineering Manager
>>>>>
>>>>> hivehome.com <http://www.hivehome.com>
>>>>>
>>>>>
>>>>>
>>>>> Hive | London | Cambridge | Houston | Toronto
>>>>> The information contained in or attached to this email is confidential
>>>>> and intended only for the use of the individual(s) to which it is
>>>>> addressed. It may contain information which is confidential and/or covered
>>>>> by legal professional or other privilege. The views expressed in this email
>>>>> are not necessarily the views of Centrica plc, and the company, its
>>>>> directors, officers or employees make no representation or accept any
>>>>> liability for their accuracy or completeness unless expressly stated to the
>>>>> contrary.
>>>>> Centrica Connected Home Limited (company no: 5782908), registered in
>>>>> England and Wales with its registered office at Millstream, Maidenhead
>>>>> Road, Windsor, Berkshire SL4 5GD.
>>>>>
>>>>
>>>>
>>>
>>
>

[-- Attachment #2: Type: text/html, Size: 17112 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-02 12:51           ` Alan Martinovic
@ 2017-11-02 13:31             ` Alan Martinovic
  2017-11-02 14:58               ` Burton, Ross
  0 siblings, 1 reply; 11+ messages in thread
From: Alan Martinovic @ 2017-11-02 13:31 UTC (permalink / raw)
  To: Burton, Ross; +Cc: Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 9852 bytes --]

Found what I was asking for with:

bitbake -e <package>

going through the output, there are mentions of patch_do_patch().
I've traced it to meta/classes/patch.bbclass.

However, trying to execute just the patching for the recipe doesn't work.

build⟫ bitbake -c patch u-boot-fw-utils-senic
...
ERROR: Task do_patch does not exist for target u-boot-fw-utils-senic
(/home/alan/senic-os-update/oe/../meta-senic/recipes-bsp/u-boot/u-boot-fw-utils-senic_2017.03.bb:do_patch).
Close matches:
  do_fetch
  do_unpack
ERROR: Command execution failed: 1




On Thu, Nov 2, 2017 at 1:51 PM, Alan Martinovic <alan.martinovic@senic.com>
wrote:

> That I can't see the changes for that particular patch in the source (by
> manually checking the source for the changes).
> Other patches are applied correctly, I can trace them in the sources.
>
> I have no "temp/log.do_patch" and find notions of patches (both the
> successfully and unsuccessfully applied ones) only in the log.do_fetch and
> log.do_unpack steps.
>
> Is there a way to grep through how a recipe looks like when all the
> inherited parts have been expanded?
> There seems to be a do_patch task (http://www.yoctoproject.org/
> docs/2.3/ref-manual/ref-manual.html#patching-dev-environment)
> which I would grep for in that expanded recipe.
>
> For more insight, the current recipe (the one I'd like to see expanded)
> looks like this:
>
> $ cat u-boot-fw-utils-senic_2017.03.bb
> SUMMARY = "U-Boot bootloader fw_printenv/setenv utilities"
> LICENSE = "GPLv2+"
> LIC_FILES_CHKSUM = "file://Licenses/README;md5=
> a2c678cfd4a4d97135585cad908541c6"
> SECTION = "bootloader"
> DEPENDS = "mtd-utils"
>
> require recipes-bsp/u-boot/u-boot-fw-utils-mender.inc
>
> SRCBRANCH = "senic/v2017.03"
> SRC_URI = "git://git@github.com/getsenic/senic-os-uboot.git;
> protocol=ssh;branch=${SRCBRANCH}
> <http://git@github.com/getsenic/senic-os-uboot.git;protocol=ssh;branch=$%7BSRCBRANCH%7D>;
> \
>            file://boot.cmd \
>            file://0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch
> \
>            file://0002-sunxi-common-Remove-variables-used-by-Mender.patch
> \
>            file://default-gcc.patch"
>
> SRC_URI_remove = "file://0003-Integration-of-Mender-boot-code-into-U-Boot.
> patch"
> SRC_URI_append = " file://0001-Integration-of-
> Mender-boot-code-into-U-Boot.patch"
>
> SRCREV = "5233f173335a61b1e2b9120c55422a8d60ff7ffe"
> PV = "v2017.03+git${SRCPV}"
> S = "${WORKDIR}/git"
>
> # For Mender.io integration
> BOOTENV_SIZE = "0x20000"
> PROVIDES += "u-boot-fw-utils"
> RPROVIDES_${PN} += "u-boot-fw-utils"
>
> INSANE_SKIP_${PN} = "already-stripped"
> EXTRA_OEMAKE_class-target = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${CC}
> ${CFLAGS} ${LDFLAGS}" V=1'
> EXTRA_OEMAKE_class-cross = 'ARCH=${TARGET_ARCH} CC="${CC} ${CFLAGS}
> ${LDFLAGS}" V=1'
>
> inherit uboot-config
>
> do_compile () {
>         oe_runmake ${UBOOT_MACHINE}
>         oe_runmake env
> }
>
> do_install () {
>         install -d ${D}${base_sbindir}
>         install -d ${D}${sysconfdir}
>         install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_
> printenv
>         install -m 755 ${S}/tools/env/fw_printenv
> ${D}${base_sbindir}/fw_setenv
>         install -m 0644 ${S}/tools/env/fw_env.config
> ${D}${sysconfdir}/fw_env.config
> }
>
> do_install_class-cross () {
>         install -d ${D}${bindir_cross}
>         install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_
> printenv
>         install -m 755 ${S}/tools/env/fw_printenv
> ${D}${bindir_cross}/fw_setenv
> }
>
> SYSROOT_DIRS_append_class-cross = " ${bindir_cross}"
>
> PACKAGE_ARCH = "${MACHINE_ARCH}"
> BBCLASSEXTEND = "cross"
>
>
>
>
> On Thu, Nov 2, 2017 at 12:50 PM, Burton, Ross <ross.burton@intel.com>
> wrote:
>
>> What do you mean by patches not being applied correctly?
>>  temp/log.do_patch has the output from patch so that might show that you've
>> a patch that applies with lots of fuzz and is applied incorrectly.
>>
>> Ross
>>
>> On 2 November 2017 at 11:46, Alan Martinovic <alan.martinovic@senic.com>
>> wrote:
>>
>>> I see, so I can't use the devshell to debug why the patch hasn't been
>>> correctly applied.
>>>
>>> The answer you gave help for debugging actual build and configure
>>> problems.
>>> Debugging patching seems to be out scope for this thread.
>>> Will start a new one.
>>>
>>>
>>> On Thu, Nov 2, 2017 at 12:13 PM, Burton, Ross <ross.burton@intel.com>
>>> wrote:
>>>
>>>> The patching is done by a bbclass (patch.bbclass) and helper modules
>>>> (meta/oe/lib/patch.py), so you can't execute it like a shell task (such as
>>>> do_compile).
>>>>
>>>> Ross
>>>>
>>>> On 2 November 2017 at 11:05, Alan Martinovic <alan.martinovic@senic.com
>>>> > wrote:
>>>>
>>>>> Thanks for the suggestions
>>>>> Am currently implementing both of them and am trying to understand how
>>>>> the patching is done.
>>>>>
>>>>> In the temp directory I can see all the tasks.
>>>>> For some reasons the patch wasn't applied correctly and I'm debugging
>>>>> why.
>>>>>
>>>>> I have patches from before which are being correctly applied, one of
>>>>> them being "0001-sun8i-configs-Add-CONFIG
>>>>> _BOOTCOUNT_LIMIT-ENV-for-men.patch".
>>>>> Am using that one just as a reference for this example.
>>>>> I want to see the steps done to apply the patch so I do:
>>>>>
>>>>>     temp$ grep -r 0001-sun8i-configs *
>>>>>     temp$ grep -r quilt *
>>>>>
>>>>> I am expecting to see some commands related to the patching process in
>>>>> one of the run scripts.
>>>>> For example,  "quilt" followed by some arguments or
>>>>> "0001-sun8i-configs-Add-CONFIG_BOOTCOUNT_LIMIT-ENV-for-men.patch"
>>>>> being applied
>>>>> by some other tool instead of quilt.
>>>>>
>>>>> I only end up with some findings in the log files (log.do_fetch,
>>>>> log.do_unpack which don't tell me much).
>>>>>
>>>>>
>>>>> Where are the steps that apply the patches located?
>>>>>
>>>>> Be Well :)
>>>>> Alan
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I've gotten to the
>>>>>
>>>>> On Wed, Nov 1, 2017 at 8:05 PM, Alex Kiernan <
>>>>> alex.kiernan@hivehome.com> wrote:
>>>>>
>>>>>> On 1 November 2017 at 17:38, Alan Martinovic <
>>>>>> alan.martinovic@senic.com> wrote:
>>>>>>
>>>>>>> I'm just upgrading to pyro and have some issues with u-boot-fw-utils.
>>>>>>>
>>>>>>> The error fails at do_compile stage which looks like this:
>>>>>>>
>>>>>>>     do_compile () {
>>>>>>>             oe_runmake ${UBOOT_MACHINE}
>>>>>>>             oe_runmake env
>>>>>>>     }
>>>>>>>
>>>>>>>
>>>>>>> The error is:
>>>>>>>
>>>>>>> Log data follows:
>>>>>>> | DEBUG: Executing shell function do_compile
>>>>>>> | NOTE: make -j 16 CROSS_COMPILE=arm-senic-linux-gnueabi-
>>>>>>> CC=arm-senic-linux-gnueabi-       gcc  -march=armv7ve
>>>>>>> -mfpu=neon-vfpv4
>>>>>>>  -mfloat-abi=hard -mcpu=cortex-a7
>>>>>>> --sysroot=/home/alan/senic-os-update/build/tmp-glibc/work/se
>>>>>>> nic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-senic/v2017
>>>>>>> .03+gitAUTOINC+5233f17333-r0/recipe-sysroot
>>>>>>>  -O2 -pipe -g -feliminate-unused-debug-types
>>>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0=/usr/src/debug/u-boot-
>>>>>>> fw-utils-senic/v2017.03+gitAUTOINC+5233f17333-r0
>>>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot-native=
>>>>>>> -fdebug-prefix-map=/home/alan/senic-os-update/build/tmp-glib
>>>>>>> c/work/senic_hub_beta-senic-linux-gnueabi/u-boot-fw-utils-se
>>>>>>> nic/v2017.03+gitAUTOINC+5233f17333-r0/recipe-sysroot=
>>>>>>>  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed V=1
>>>>>>> | ERROR: oe_runmake failed
>>>>>>> | make -f ./Makefile silentoldconfig
>>>>>>> | make -f ./scripts/Makefile.build obj=scripts/basic
>>>>>>> |   cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2
>>>>>>> -fomit-frame-pointer      -o scripts/basic/fixdep
>>>>>>> scripts/basic/fixdep.c
>>>>>>> | /bin/sh: 1: cc: not found
>>>>>>>
>>>>>>>
>>>>>>> I would assume this is a to specific error to ask help about. It
>>>>>>> seems
>>>>>>> that the compiler isn't being called correctly (it's called as cc,
>>>>>>> which isn't the full compiler name).
>>>>>>> Suggestions are welcome but that isn't the reason for my post.
>>>>>>>
>>>>>>>
>>>>>> Guessing... apply this in your recipe:
>>>>>>
>>>>>> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/rec
>>>>>> ipes-bsp/u-boot/files/default-gcc.patch?h=pyro
>>>>>>
>>>>>> --
>>>>>> Alex Kiernan
>>>>>> Senior Engineering Manager
>>>>>>
>>>>>> hivehome.com <http://www.hivehome.com>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Hive | London | Cambridge | Houston | Toronto
>>>>>> The information contained in or attached to this email is
>>>>>> confidential and intended only for the use of the individual(s) to which it
>>>>>> is addressed. It may contain information which is confidential and/or
>>>>>> covered by legal professional or other privilege. The views expressed in
>>>>>> this email are not necessarily the views of Centrica plc, and the company,
>>>>>> its directors, officers or employees make no representation or accept any
>>>>>> liability for their accuracy or completeness unless expressly stated to the
>>>>>> contrary.
>>>>>> Centrica Connected Home Limited (company no: 5782908), registered in
>>>>>> England and Wales with its registered office at Millstream, Maidenhead
>>>>>> Road, Windsor, Berkshire SL4 5GD.
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>

[-- Attachment #2: Type: text/html, Size: 18798 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-02 13:31             ` Alan Martinovic
@ 2017-11-02 14:58               ` Burton, Ross
  2017-11-02 15:06                 ` Alan Martinovic
  0 siblings, 1 reply; 11+ messages in thread
From: Burton, Ross @ 2017-11-02 14:58 UTC (permalink / raw)
  To: Alan Martinovic; +Cc: Yocto-mailing-list

[-- Attachment #1: Type: text/plain, Size: 798 bytes --]

On 2 November 2017 at 13:31, Alan Martinovic <alan.martinovic@senic.com>
wrote:

> Found what I was asking for with:
>
> bitbake -e <package>
>
> going through the output, there are mentions of patch_do_patch().
> I've traced it to meta/classes/patch.bbclass.
>
> However, trying to execute just the patching for the recipe doesn't work.
>
> build⟫ bitbake -c patch u-boot-fw-utils-senic
> ...
> ERROR: Task do_patch does not exist for target u-boot-fw-utils-senic
> (/home/alan/senic-os-update/oe/../meta-senic/recipes-bsp/
> u-boot/u-boot-fw-utils-senic_2017.03.bb:do_patch). Close matches:
>   do_fetch
>   do_unpack
> ERROR: Command execution failed: 1
>

Whhhaaaaat.

Can your paste the output of this please:

$ bitbake u-boot-fw-utils-senic -c listtasks

Ross

[-- Attachment #2: Type: text/html, Size: 1348 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Debugging a build issue in an isolated enviroment
  2017-11-02 14:58               ` Burton, Ross
@ 2017-11-02 15:06                 ` Alan Martinovic
  0 siblings, 0 replies; 11+ messages in thread
From: Alan Martinovic @ 2017-11-02 15:06 UTC (permalink / raw)
  To: Burton, Ross; +Cc: Yocto-mailing-list

Opa! Great command for the future, tnx.

Strange that it isn't listed here and is greppable in bitbake -e
u-boot-fw-utils-senic...
Here it is:

u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_build
           Default task for a recipe - depends on all other normal
tasks required to 'build' a recipe
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_buildclean
           Call 'make clean' or equivalent in
/home/alan/senic-os-update/build/workspace/sources/u-boot-fw-utils-senic
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_checkuri
           Validates the SRC_URI value
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_checkuriall
           Validates the SRC_URI value for all recipes required to
build a target
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_clean
           Removes all output files for a target
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_cleanall
           Removes all output files, shared state cache, and
downloaded source files for a target
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_cleansstate
           Removes all output files and shared state cache for a
target
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_compile
           Compiles the source in the compilation directory
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_configure
           Configures the source by enabling and disabling any
build-time and configuration options for the software being built
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_deploy
           Writes deployable output files to the deploy directory
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_devpyshell
           Starts an interactive Python shell for
development/debugging
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_devshell
           Starts a shell with the environment set up for
development/debugging
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_fetch
           Fetches the source code
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_fetchall
           Fetches all remote sources required to build a target
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_install
           Copies files from the compilation directory to a holding
area
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_listtasks
           Lists all defined tasks for a target
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_package
           Analyzes the content of the holding area and splits it into
subsets based on available packages and files
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_package_qa
           Runs QA checks on packaged files
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks:
do_package_write_ipk       Creates the actual IPK packages and places
them in the Package Feed area
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_packagedata
           Creates package metadata used by the build system to
generate the final packages
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_populate_lic
           Writes license information for the recipe that is collected
later when the image is constructed
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks:
do_populate_sysroot        Copies a subset of files installed by
do_install into the sysroot in order to make them available to other
recipes
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_prepare_recipe_sysroot
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_provide_mender_defines
u-boot-fw-utils-senic-v2017.03+git999-r0 do_listtasks: do_unpack
           Unpacks the source code into a working directory

On Thu, Nov 2, 2017 at 3:58 PM, Burton, Ross <ross.burton@intel.com> wrote:
> On 2 November 2017 at 13:31, Alan Martinovic <alan.martinovic@senic.com>
> wrote:
>>
>> Found what I was asking for with:
>>
>> bitbake -e <package>
>>
>> going through the output, there are mentions of patch_do_patch().
>> I've traced it to meta/classes/patch.bbclass.
>>
>> However, trying to execute just the patching for the recipe doesn't work.
>>
>> build⟫ bitbake -c patch u-boot-fw-utils-senic
>> ...
>> ERROR: Task do_patch does not exist for target u-boot-fw-utils-senic
>> (/home/alan/senic-os-update/oe/../meta-senic/recipes-bsp/u-boot/u-boot-fw-utils-senic_2017.03.bb:do_patch).
>> Close matches:
>>   do_fetch
>>   do_unpack
>> ERROR: Command execution failed: 1
>
>
> Whhhaaaaat.
>
> Can your paste the output of this please:
>
> $ bitbake u-boot-fw-utils-senic -c listtasks
>
> Ross


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2017-11-02 15:06 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-01 17:38 Debugging a build issue in an isolated enviroment Alan Martinovic
2017-11-01 18:05 ` Burton, Ross
2017-11-01 19:05 ` Alex Kiernan
2017-11-02 11:05   ` Alan Martinovic
2017-11-02 11:13     ` Burton, Ross
2017-11-02 11:46       ` Alan Martinovic
2017-11-02 11:50         ` Burton, Ross
2017-11-02 12:51           ` Alan Martinovic
2017-11-02 13:31             ` Alan Martinovic
2017-11-02 14:58               ` Burton, Ross
2017-11-02 15:06                 ` Alan Martinovic

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.