Strange build error first time on community bsp master branch


Peter Bergin
 

Hi,

following these steps to build master branch has a really strange behavior. First build with bitbake bails out hard with tons of WARNINGS and ends up with an error in sstate.bbclass.

    $ repo init -u https://github.com/Freescale/fsl-community-bsp-platform -b master
    $ repo sync
    $ EULA=1 MACHINE=imx8mm-lpddr4-evk DISTRO=poky source setup-environment build
    $ bitbake core-image-base


Here are examples of the WARNING:

----------------

WARNING: /storage/yocto/test2/sources/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb: Variable key PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs (gcc-runtime) replaces original key PREFERRED_PROVIDER_virtual/x86_64-pokysdk-linux-compilerlibs (nativesdk-gcc-runtime).
WARNING: /storage/yocto/test2/sources/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.8.1.bb: Variable key PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs (gcc-runtime) replaces original key PREFERRED_PROVIDER_virtual/x86_64-pokysdk-linux-compilerlibs (nativesdk-gcc-runtime).

-----------------

and in the end of the parsing:

-----------------

    >        spec, extrapath, tname = getpathcomponents(tid, d)

  File "/storage/yocto/test2/sources/poky/meta/classes/sstate.bbclass", line 877, in getpathcomponents(task='virtual:native:/storage/yocto/test2/sources/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.46.bb:do_populate_sysroot', d=<bb.data_smart.DataSmart object at 0x7fd579d6adf0>):
             if splithashfn[0] == "True":
    >            extrapath = d.getVar("NATIVELSBSTRING") + "/"
             else:
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'


Summary: There were 1675 WARNING messages shown.
Summary: There were 6 ERROR messages shown, returning a non-zero exit code.

-----------------

The strange thing is that if the build is restarted again with 'bitbake core-image-base' the build starts fine and works as expected.

I have tried to narrow this down a bit and my wild guess is that this has something with setup-environment script to do. My build host is Ubuntu 20.10 (that I know is not a validated build host).

Here is an experiment where I create one build dir with setup-environment this ends up in the error described above and works the second time. Then I create a new build dir with oe-init-build-env and then copy local.conf and bblayers.conf from the first build dir.

    $ EULA=1 MACHINE=imx6qdlsabresd DISTRO=poky source setup-environment build
    $ bitbake core-image-base
    <ERROR>
    $ cd ..
    $ . ./sources/poky/oe-init-build-env build2
    $ cp ../build/conf/bblayers.conf conf/
    $ cp ../build/conf/local.conf conf/
    $ bitbake core-image-base
    <OK>

Someone with more insight in setup-environment script and bitbake that have an idea?

Regards,
/Peter


Peter Bergin
 

Hi again,

On 2021-03-04 23:15, Peter Bergin wrote:
Hi,

following these steps to build master branch has a really strange behavior. First build with bitbake bails out hard with tons of WARNINGS and ends up with an error in sstate.bbclass.

    $ repo init -u https://github.com/Freescale/fsl-community-bsp-platform -b master
    $ repo sync
    $ EULA=1 MACHINE=imx8mm-lpddr4-evk DISTRO=poky source setup-environment build
    $ bitbake core-image-base


Here are examples of the WARNING:

----------------

WARNING: /storage/yocto/test2/sources/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb: Variable key PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs (gcc-runtime) replaces original key PREFERRED_PROVIDER_virtual/x86_64-pokysdk-linux-compilerlibs (nativesdk-gcc-runtime).
WARNING: /storage/yocto/test2/sources/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.8.1.bb: Variable key PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs (gcc-runtime) replaces original key PREFERRED_PROVIDER_virtual/x86_64-pokysdk-linux-compilerlibs (nativesdk-gcc-runtime).

-----------------

and in the end of the parsing:

-----------------

    >        spec, extrapath, tname = getpathcomponents(tid, d)

  File "/storage/yocto/test2/sources/poky/meta/classes/sstate.bbclass", line 877, in getpathcomponents(task='virtual:native:/storage/yocto/test2/sources/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.46.bb:do_populate_sysroot', d=<bb.data_smart.DataSmart object at 0x7fd579d6adf0>):
             if splithashfn[0] == "True":
    >            extrapath = d.getVar("NATIVELSBSTRING") + "/"
             else:
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'


Summary: There were 1675 WARNING messages shown.
Summary: There were 6 ERROR messages shown, returning a non-zero exit code.

-----------------

The strange thing is that if the build is restarted again with 'bitbake core-image-base' the build starts fine and works as expected.

I have tried to narrow this down a bit and my wild guess is that this has something with setup-environment script to do. My build host is Ubuntu 20.10 (that I know is not a validated build host).

Here is an experiment where I create one build dir with setup-environment this ends up in the error described above and works the second time. Then I create a new build dir with oe-init-build-env and then copy local.conf and bblayers.conf from the first build dir.

    $ EULA=1 MACHINE=imx6qdlsabresd DISTRO=poky source setup-environment build
    $ bitbake core-image-base
    <ERROR>
    $ cd ..
    $ . ./sources/poky/oe-init-build-env build2
    $ cp ../build/conf/bblayers.conf conf/
    $ cp ../build/conf/local.conf conf/
    $ bitbake core-image-base
    <OK>

Someone with more insight in setup-environment script and bitbake that have an idea?

Regards,
/Peter









I was too fast sending this before I realized that Andrey already reported this in https://github.com/Freescale/fsl-community-bsp-base/issues/17. Will continue there.

Regards,
/Peter


Otavio Salvador
 

Helle Peter,

This error does not seem related to meta-freescale. Please report it
to openembedded-core mailing list.

Em qui., 4 de mar. de 2021 às 19:15, Peter Bergin
<peter@...> escreveu:


Hi,

following these steps to build master branch has a really strange
behavior. First build with bitbake bails out hard with tons of WARNINGS
and ends up with an error in sstate.bbclass.

$ repo init -u
https://github.com/Freescale/fsl-community-bsp-platform -b master
$ repo sync
$ EULA=1 MACHINE=imx8mm-lpddr4-evk DISTRO=poky source
setup-environment build
$ bitbake core-image-base


Here are examples of the WARNING:

----------------

WARNING:
/storage/yocto/test2/sources/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb:
Variable key PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs
(gcc-runtime) replaces original key
PREFERRED_PROVIDER_virtual/x86_64-pokysdk-linux-compilerlibs
(nativesdk-gcc-runtime).
WARNING:
/storage/yocto/test2/sources/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.8.1.bb:
Variable key PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs
(gcc-runtime) replaces original key
PREFERRED_PROVIDER_virtual/x86_64-pokysdk-linux-compilerlibs
(nativesdk-gcc-runtime).

-----------------

and in the end of the parsing:

-----------------

> spec, extrapath, tname = getpathcomponents(tid, d)

File "/storage/yocto/test2/sources/poky/meta/classes/sstate.bbclass",
line 877, in
getpathcomponents(task='virtual:native:/storage/yocto/test2/sources/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.46.bb:do_populate_sysroot',
d=<bb.data_smart.DataSmart object at 0x7fd579d6adf0>):
if splithashfn[0] == "True":
> extrapath = d.getVar("NATIVELSBSTRING") + "/"
else:
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'


Summary: There were 1675 WARNING messages shown.
Summary: There were 6 ERROR messages shown, returning a non-zero exit code.

-----------------

The strange thing is that if the build is restarted again with 'bitbake
core-image-base' the build starts fine and works as expected.

I have tried to narrow this down a bit and my wild guess is that this
has something with setup-environment script to do. My build host is
Ubuntu 20.10 (that I know is not a validated build host).

Here is an experiment where I create one build dir with
setup-environment this ends up in the error described above and works
the second time. Then I create a new build dir with oe-init-build-env
and then copy local.conf and bblayers.conf from the first build dir.

$ EULA=1 MACHINE=imx6qdlsabresd DISTRO=poky source
setup-environment build
$ bitbake core-image-base
<ERROR>
$ cd ..
$ . ./sources/poky/oe-init-build-env build2
$ cp ../build/conf/bblayers.conf conf/
$ cp ../build/conf/local.conf conf/
$ bitbake core-image-base
<OK>

Someone with more insight in setup-environment script and bitbake that
have an idea?

Regards,
/Peter








--
Otavio Salvador O.S. Systems
http://www.ossystems.com.br http://code.ossystems.com.br
Mobile: +55 (53) 9 9981-7854 Mobile: +1 (347) 903-9750


Peter Bergin
 

Hi Otavio,

On 2021-03-08 12:30, Otavio Salvador wrote:
Helle Peter,

This error does not seem related to meta-freescale. Please report it
to openembedded-core mailing list.
please see https://github.com/Freescale/fsl-community-bsp-base/issues/17, the issue is already resolved by a commit in openembedded.

Best regards,
/Peter