embed-me / meta-ebaz4205

meta-layer for EBAZ4205
GNU General Public License v3.0
12 stars 13 forks source link

ebaz4205-image-standard build name error #1

Closed apond308 closed 3 years ago

apond308 commented 3 years ago

When running 'bitbake ebaz4205-image-standard', I ran into an error saying that "name 'ebaz4205' is not defined".

Here is the log output:

ERROR: u-boot-zynq-uenv-1.0-r0 do_compile: Error executing a python function in exec_python_func() autogenerated:

The stack trace of python calls that resulted in this exception/failure was: File: 'exec_python_func() autogenerated', lineno: 2, function: 0001: 0002:do_compile(d) 0003: File: '/home/apond/EBAZ4205/poky/meta-xilinx/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-uenv.bb', lineno: 85, function: do_compile 0081:DEVICETREE_LOAD_ADDRESS_zynq = "0x2000000" 0082:DEVICETREE_LOAD_ADDRESS_zynqmp = "0x4000000" 0083: 0084:python do_compile() { 0085: env = uenv_populate(d) 0086: with open(d.expand("${WORKDIR}/uEnv.txt"), "w") as f: 0087: for k, v in env.items(): 0088: f.write("{0}={1}\n".format(k, v)) 0089:} File: '/home/apond/EBAZ4205/poky/meta-ebaz4205/recipes-bsp/u-boot/u-boot-zynq-uenv.bbappend', lineno: 11, function: uenv_populate 0007: env["kernel_image"] = d.getVar("KERNEL_IMAGETYPE") 0008: env["loadkernel"] = "load mmc 0 ${kernel_load_address} ${kernel_image}" 0009: 0010: # TODO: The previous xilinx-method did not work well, hardcode it for now... *** 0011: env["devicetree_image"] = ebaz4205-zynq7.dtb 0012: env["loaddtb"] = "load mmc 0 ${devicetree_load_address} ${devicetree_image}" 0013: 0014: # TODO: Hardcoding, not nice. Is there any way to know the image that is currently build 0015: # in another recipe? Exception: NameError: name 'ebaz4205' is not defined

ERROR: Logfile of failure stored in: /home/apond/EBAZ4205/poky/build/tmp/work/ebaz4205_zynq7-poky-linux-gnueabi/u-boot-zynq-uenv/1.0-r0/temp/log.do_compile.11428 ERROR: Task (/home/apond/EBAZ4205/poky/meta-xilinx/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-uenv.bb:do_compile) failed with exit code '1'

embed-me commented 3 years ago

Did you fetch master or zeus? The u-boot-zynq-uenv recipe is a bit of a mess since you cannot fetch information from other recipes, therefore do not have the information required to build a proper uEnv.txt for u-boot. However, can you please verify that the u-boot-zynq-uenv recipe is really the root cause by removing it from the build?

apond308 commented 3 years ago

Yes, I am on zeus branch. And what file can I edit to remove it from the build?

embed-me commented 3 years ago

Strange, everything works fine on my end. Have you tried a clean build? Did you source the native SDK? You can have a look at my blog post for further details: click You can try to remove the whole .bbappend file for testing 'meta-ebaz4205/recipes-bsp/u-boot/u-boot-zynq-uenv.bbappend', however, I would appreciate it if you could answer the questions above so we can really debug the root cause.

barbiani commented 3 years ago

I´ve found that the error comes from ebaz4205-zynq7.dtb not being a string.

Put it in double quotes "ebaz4205-zynq7.dtb" and it compiles.

master and zeus branches differ.

embed-me commented 3 years ago

Thanks, zeus now uses the default config from Xilinx 0778c889b1c8f09201bc9374ae0ab8c7eb3a5818, master uses the hardcoded option 8c3fa65da85a5d1a60760640e9b9c68b0ee6195f, this time with double quotes. My local repos was tainted, that's why even the "clean" build did work for me.