renesas-rcar / meta-renesas

MIT License
53 stars 80 forks source link

R-Car E3 #15

Open Samuellee1986 opened 5 years ago

Samuellee1986 commented 5 years ago

Build Image according to the guide, but get the following error:

ERROR: ExpansionError during parsing /home/samuel/Renesas/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb Traceback (most recent call last): File "Var ", line 1, in bb.data_smart.ExpansionError: Failure expanding variable RDEPENDS_syslog-ng, expression was gawk syslog-ng-libs ${@base_conditional("ONLINE_PACKAGE_MANAGEMENT", "none", "", "update-rc.d", d)} which triggered exception NameError: name 'base_conditional' is not defined

I find base_conditional is used by meta-openembedded and meta-renesas, what should I do to solve the problem? please help me

slawr commented 5 years ago

Hi, there is very little information here to help suggest things you could try.

Which guide are you following? The Yocto BSP Quick Start Guide, e-linux.org? What image are you building?

Can you paste the build configuration that bitbake reports?

Regards

Steve

Samuellee1986 commented 5 years ago

Hi, there is very little information here to help suggest things you could try.

Which guide are you following? The Yocto BSP Quick Start Guide, e-linux.org? What image are you building?

Can you paste the build configuration that bitbake reports?

Regards

Steve

Thanks for reply.

This Guide:https://github.com/renesas-rcar/meta-renesas/blob/rocko/meta-rcar-gen3/README.md

The Image I am going to compiel is for R-Car E3

The whole log is following: --------------samuel@samuel:~/Renesas$ . poky/oe-init-build-env

Shell environment set up for builds.

You can now run 'bitbake '

Common targets are: core-image-minimal core-image-sato meta-toolchain meta-ide-support

You can also run generated qemu images with a command like 'runqemu qemux86' samuel@samuel:~/Renesas/build$ bitbake core-image-minimal WARNING: Layer rcar-gen3 should set LAYERSERIES_COMPAT_rcar-gen3 in its conf/layer.conf file to list the core layer names it is compatible with. WARNING: Layer meta-optee should set LAYERSERIES_COMPAT_meta-optee in its conf/layer.conf file to list the core layer names it is compatible with. WARNING: Layer openembedded-layer should set LAYERSERIES_COMPAT_openembedded-layer in its conf/layer.conf file to list the core layer names it is compatible with. WARNING: Layer rcar-gen3 should set LAYERSERIES_COMPAT_rcar-gen3 in its conf/layer.conf file to list the core layer names it is compatible with. WARNING: Layer meta-optee should set LAYERSERIES_COMPAT_meta-optee in its conf/layer.conf file to list the core layer names it is compatible with. WARNING: Layer openembedded-layer should set LAYERSERIES_COMPAT_openembedded-layer in its conf/layer.conf file to list the core layer names it is compatible with. Loading cache: 100% |###################################################################################################################################################################################################| Time: 0:00:00 Loaded 52 entries from dependency cache. WARNING: /home/samuel/Renesas/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb: Exception during build_dependencies for RDEPENDS_syslog-ng | ETA: --:--:-- WARNING: /home/samuel/Renesas/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb: Error during finalise of /home/samuel/Renesas/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb ERROR: ExpansionError during parsing /home/samuel/Renesas/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb Traceback (most recent call last): File "Var ", line 1, in bb.data_smart.ExpansionError: Failure expanding variable RDEPENDS_syslog-ng, expression was gawk syslog-ng-libs ${@base_conditional("ONLINE_PACKAGE_MANAGEMENT", "none", "", "update-rc.d", d)} which triggered exception NameError: name 'base_conditional' is not defined

slawr commented 5 years ago

Thanks for the update.

The fact that bitbake does not get as far as reporting the build configuration suggests a fundamental setup issue. Particularly as you are trying to build one of the standard images.

From the output it looks like your problem may be a mismatch between Yocto versions.

You get warnings likes this for several yocto layers (meta-renesas, meta-oe):

samuel@samuel:~/Renesas/build$ bitbake core-image-minimal WARNING: Layer rcar-gen3 should set LAYERSERIES_COMPAT_rcar-gen3 in its conf/layer.conf file to list the core layer names it is compatible with.

That variable was introduced in Yocto Project 2.5 (sumo). So I think the issue is that you do not have the 'rocko' branch of the Poky layer checked out. Try that and report back please.

A note on guides: Thank you for linking to the guide you were using. Further information on builds can be found on elinux.org. If you are working in production, your employer will have access to the Customer Yocto BSP which has a wide ranging documentation set with it.

A note on Yocto Project versions: The R-Car Gen 3 Yocto BSP comes in two broad versions. The Customer YBSP and Community YBSP. The Customer YBSP targets production and projects which require associated levels of support and testing. The Customer YBSP targets YP 2.4 (rocko). This is why the default branch for meta-renesas is the rocko branch.

The Community YBSP (branch names with a '-dev' suffix) provides support for later YP versions, currently 2.5 (sumo) and 2.6 (thud), to support community work in alliances such as Genivi and AGL and R&D work. It does not have the same levels of support as the customer YBSP.

Samuellee1986 commented 5 years ago

Thanks for the update.

The fact that bitbake does not get as far as reporting the build configuration suggests a fundamental setup issue. Particularly as you are trying to build one of the standard images.

From the output it looks like your problem may be a mismatch between Yocto versions.

You get warnings likes this for several yocto layers (meta-renesas, meta-oe):

samuel@samuel:~/Renesas/build$ bitbake core-image-minimal WARNING: Layer rcar-gen3 should set LAYERSERIES_COMPAT_rcar-gen3 in its conf/layer.conf file to list the core layer names it is compatible with.

That variable was introduced in Yocto Project 2.5 (sumo). So I think the issue is that you do not have the 'rocko' branch of the Poky layer checked out. Try that and report back please.

A note on guides: Thank you for linking to the guide you were using. Further information on builds can be found on elinux.org. If you are working in production, your employer will have access to the Customer Yocto BSP which has a wide ranging documentation set with it.

A note on Yocto Project versions: The R-Car Gen 3 Yocto BSP comes in two broad versions. The Customer YBSP and Community YBSP. The Customer YBSP targets production and projects which require associated levels of support and testing. The Customer YBSP targets YP 2.4 (rocko). This is why the default branch for meta-renesas is the rocko branch.

The Community YBSP (branch names with a '-dev' suffix) provides support for later YP versions, currently 2.5 (sumo) and 2.6 (thud), to support community work in alliances such as Genivi and AGL and R&D work. It does not have the same levels of support as the customer YBSP.

Thank you very much! I think you are right, my poky is from the master, I will check again to switch to rocko, if there is any result I will feed back. Thanks again

Samuellee1986 commented 5 years ago

Thanks for the update.

The fact that bitbake does not get as far as reporting the build configuration suggests a fundamental setup issue. Particularly as you are trying to build one of the standard images.

From the output it looks like your problem may be a mismatch between Yocto versions.

You get warnings likes this for several yocto layers (meta-renesas, meta-oe):

samuel@samuel:~/Renesas/build$ bitbake core-image-minimal WARNING: Layer rcar-gen3 should set LAYERSERIES_COMPAT_rcar-gen3 in its conf/layer.conf file to list the core layer names it is compatible with.

That variable was introduced in Yocto Project 2.5 (sumo). So I think the issue is that you do not have the 'rocko' branch of the Poky layer checked out. Try that and report back please.

A note on guides: Thank you for linking to the guide you were using. Further information on builds can be found on elinux.org. If you are working in production, your employer will have access to the Customer Yocto BSP which has a wide ranging documentation set with it.

A note on Yocto Project versions: The R-Car Gen 3 Yocto BSP comes in two broad versions. The Customer YBSP and Community YBSP. The Customer YBSP targets production and projects which require associated levels of support and testing. The Customer YBSP targets YP 2.4 (rocko). This is why the default branch for meta-renesas is the rocko branch.

The Community YBSP (branch names with a '-dev' suffix) provides support for later YP versions, currently 2.5 (sumo) and 2.6 (thud), to support community work in alliances such as Genivi and AGL and R&D work. It does not have the same levels of support as the customer YBSP.

Hello,I met another compile problem, it seems there is no support for plat-ebusi from optee-os, the following is the deteailed information, What should I do?

DEBUG: Executing shell function do_compile NOTE: make -j 2 PLATFORM=ebisu CFG_ARM64_core=y CROSS_COMPILE_core=aarch64-poky-linux- CROSS_COMPILE_ta_arm64=aarch64-poky-linux- NOWERROR=1 ta-targets=ta_arm64 LDFLAGS= LIBGCC_LOCATE_CFLAGS=--sysroot=/home/samuel/Renesas/build/tmp/work/ebisu-poky-linux/optee-os/2.5.0+gitAUTOINC+3ff350a12d-r0/recipe-sysroot all CFG_TEE_TA_LOG_LEVEL=0 core/core.mk:10: core/arch/arm/plat-ebisu/conf.mk: No such file or directory mk/subdir.mk:151: core/arch/arm/plat-ebisu/sub.mk: No such file or directory core/core.mk:107: core/arch/arm/plat-ebisu/link.mk: No such file or directory make: *** No rule to make target 'core/arch/arm/plat-ebisu/link.mk'. Stop. ERROR: oe_runmake failed WARNING: exit code 1 from a shell command. ERROR: Function failed: do_compile (log file is located at /home/samuel/Renesas/build/tmp/work/ebisu-poky-linux/optee-os/2.5.0+gitAUTOINC+3ff350a12d-r0/temp/log.do_compile.85548)

khangnguyenrvc commented 5 years ago

Hi Samuellee1986,

The 2.5.0+gitAUTOINC+3ff350a12d is not the supported version of optee-os in YBSP, please check out to correct released YBSP: E.g.:

Samuellee1986 commented 5 years ago

Hi Samuellee1986,

The 2.5.0+gitAUTOINC+3ff350a12d is not the supported version of optee-os in YBSP, please check out to correct released YBSP: E.g.:

  • YBSP: Renesas-Yocto-v3.19.0 -> optee-os: 3.1.0, commit ID: c3f73c1e8667a829e085c6d2c4d8a6ff1ec3d213
  • YBSP: Renesas-Yocto-v3.15.0 -> optee-os:3.1.0, commit ID: 2a34a42f9a6d69c460d70e59e8e2a0c88ca88adc
  • YBSP: Renesas-Yocto-v3.6.0 -> optee-os: 2.6.0, commit ID: 58147841a05b8a09aa92a8fae60b3207e4fe72bc

Thanks for your reply, but I don't think the version is the problem, I think the difference of definition for MACHINE caused that problem: in the poky, MACHINE has been set to "ebusi", but in optee-os, the MACHINE should be "rcar"(as there is plat-rcar under optee-os/corearch/arm,not plat-ebisu). I changed MACHINE under optee-os to rcar, and it works. I think the developper should make the MACHINE name the same for RCAR-E3, please have a check

slawr commented 5 years ago

One suggestion: The YBSP provides recipes for optee so the version in meta-linaro is masked. You can find reference bblayer,conf and local.conf examples in the YBSP. Ebisu versions here: https://github.com/renesas-rcar/meta-renesas/tree/rocko/meta-rcar-gen3/docs/sample/conf/ebisu

poky-gcc sub-folder for poky toolchain, linaro-gcc sub-folder for linaro toolchain. Then bsp folder for no gfx/mmp, gfx folder if gfx only, mmp folder if both gfx and mmp enabled.

Example mask for meta-linaro optee here: https://github.com/renesas-rcar/meta-renesas/blob/rocko/meta-rcar-gen3/docs/sample/conf/ebisu/linaro-gcc/mmp/local-wayland.conf#L248

Samuellee1986 commented 5 years ago

@slawr Thanks very much for your information, I will have a try. So many setting, for beginner like me it's a litter difficult, but I will have a try.