作者:付汉杰 hankf@amd.com
需求
客户为AMD Xilinx SoC创建了PetaLinux工程。需要定制PetaLinux中的FSBL。
PetaLinux默认从内部指定的源取代码。
取出FSBL代码
使用命令“petalinux-devtool modify fsbl-firmware”, 可以取出FSBL代码到目录“components/yocto/workspace/sources/fsbl-firmware/”。FSBL的主代码是文件“lib/sw_apps/zynq_fsbl/src/main.c”。
修改目录“components/yocto/workspace/sources/fsbl-firmware/”中的代码,会影响以后在PetaLinux中的编译的FSBL。
编译FSBL代码
使用命令“petalinux-build -c fsbl-firmware -x distclean && petalinux-build -c fsbl-firmware”,能编译FSBL代码,会导入目录“components/yocto/workspace/sources/fsbl-firmware/”中的代码,使其生效。
编译目录
编译时,PetaLinux会把目录“components/yocto/workspace/sources/fsbl-firmware/”中的代码,复制到类似下面的目录。
build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/fsbl-firmware-2021.2+git999/fsbl-firmware/zynq_fsbl_bsp
PetaLinux接着在上述目录中执行编译。上述目录也包含单板相关的ps7_init或者psu_init文件。
版本更改后,上述目录的名称可能变化。
注意事项
从PetaLinux 2021.1起,FSBL的 recipe 名称,从fsbl.bb改为了fsbl-firmware.bb。编译时,要使用fsbl-firmware,而不是fsbl。
从PetaLinux 2021.1起,PLM的 recipe 名称,从plm.bb改为了plm-firmware.bb。
测试环境
ZC706 单板
PetaLinux 2021.2
额外信息
外部目录信息
使用外部目录的源代码编译,会打印字符串“compiling from external source tree”。
NOTE: fsbl-firmware: compiling from external source tree /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/workspace/sources/fsbl-firmware
编译成功的信息
[INFO] Sourcing buildtools [INFO] Building fsbl-firmware [INFO] Sourcing build environment [INFO] Generating workspace directory INFO: bitbake fsbl-firmware NOTE: Started PRServer with DBfile: /proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 38015, PID: 62600 Loading cache...done. Loaded 5126 entries from dependency cache. Parsing recipes...done. Parsing of 3476 .bb files complete (3469 cached, 7 parsed). 5133 targets, 268 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Initialising tasks...done. Sstate summary: Wanted 1 Found 1 Missed 0 Current 103 (100% match, 100% complete) NOTE: Executing Tasks NOTE: Running task 1 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_populate_lic) NOTE: Running task 3 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_deploy_source_date_epoch) NOTE: Running noexec task 350 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_rm_work_all) NOTE: Running task 363 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_fetch) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_populate_lic: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_fetch: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_deploy_source_date_epoch: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_fetch: Succeeded NOTE: Running task 391 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_prepare_recipe_sysroot) NOTE: Running task 392 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_unpack) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_populate_lic: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_deploy_source_date_epoch: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_unpack: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_prepare_recipe_sysroot: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_unpack: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_prepare_recipe_sysroot: Succeeded NOTE: Running task 393 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_create_yaml) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_create_yaml: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_create_yaml: Succeeded NOTE: Running task 394 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_configure) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_configure: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_configure: Succeeded NOTE: Running task 395 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_compile) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_compile: Started NOTE: fsbl-firmware: compiling from external source tree /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/workspace/sources/fsbl-firmware NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_compile: Succeeded NOTE: Running task 396 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_install) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_install: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_install: Succeeded NOTE: Running task 397 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_populate_sysroot) NOTE: Running task 398 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_package) NOTE: Running task 399 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_deploy) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_populate_sysroot: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_deploy: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_package: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_deploy: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_populate_sysroot: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_package: Succeeded NOTE: Running task 400 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_packagedata) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_packagedata: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_packagedata: Succeeded NOTE: Running task 401 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_package_qa) NOTE: Running task 402 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_package_write_rpm) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_package_qa: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_package_write_rpm: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_package_write_rpm: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_package_qa: Succeeded NOTE: Running noexec task 403 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_build) NOTE: Tasks Summary: Attempted 403 tasks of which 386 didn't need to be rerun and all succeeded. INFO: Failed to copy built images to tftp dir: /tftpboot [INFO] Successfully built fsbl-firmware
编译失败的信息
如果故意在代码添加错误,会得到类似下面的信息。
[INFO] Sourcing buildtools [INFO] Building fsbl-firmware [INFO] Sourcing build environment [INFO] Generating workspace directory INFO: bitbake fsbl-firmware NOTE: Started PRServer with DBfile: /proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 34645, PID: 6208 Loading cache...done. Loaded 5126 entries from dependency cache. Parsing recipes...done. Parsing of 3476 .bb files complete (3469 cached, 7 parsed). 5133 targets, 268 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Initialising tasks...done. Sstate summary: Wanted 1 Found 1 Missed 0 Current 103 (100% match, 100% complete) NOTE: Executing Tasks NOTE: Running task 1 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_populate_lic) NOTE: Running task 3 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_deploy_source_date_epoch) NOTE: Running noexec task 350 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_rm_work_all) NOTE: Running task 363 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_fetch) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_populate_lic: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_deploy_source_date_epoch: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_fetch: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_fetch: Succeeded NOTE: Running task 391 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_prepare_recipe_sysroot) NOTE: Running task 392 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_unpack) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_populate_lic: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_deploy_source_date_epoch: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_prepare_recipe_sysroot: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_unpack: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_unpack: Succeeded NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_prepare_recipe_sysroot: Succeeded NOTE: Running task 393 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_create_yaml) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_create_yaml: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_create_yaml: Succeeded NOTE: Running task 394 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_configure) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_configure: Started NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_configure: Succeeded NOTE: Running task 395 of 403 (/home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_compile) NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_compile: Started NOTE: fsbl-firmware: compiling from external source tree /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/workspace/sources/fsbl-firmware Log data follows: | DEBUG: Executing python function externalsrc_compile_prefunc | NOTE: fsbl-firmware: compiling from external source tree /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/workspace/sources/fsbl-firmware | DEBUG: Python function externalsrc_compile_prefunc finished | DEBUG: Executing shell function do_compile | NOTE: make -j1 | make -C zynq_fsbl_bsp | make[1]: Entering directory '/proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/fsbl-firmware-2021.2+git999/fsbl-firmware/zynq_fsbl_bsp' | make --no-print-directory seq_libs | Running Make include in ps7_cortexa9_0/libsrc/coresightps_dcc_v1_8/src | make -C ps7_cortexa9_0/libsrc/coresightps_dcc_v1_8/src -s include "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns" | Running Make include in ps7_cortexa9_0/libsrc/cpu_cortexa9_v2_11/src ....................... | make -C ps7_cortexa9_0/libsrc/xilffs_v4_6/src -s libs "SHELL=/bin/sh" "COMPILER=arm-none-eabi-gcc" "ASSEMBLER=arm-none-eabi-as" "ARCHIVER=arm-none-eabi-ar" "COMPILER_FLAGS= -O2 -c" "EXTRA_COMPILER_FLAGS=-mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -nostartfiles -g -Wall -Wextra -fno-tree-loop-distribute-patterns" | xtime_l.c:45:9: note: '#pragma message: For the sleep routines, Global timer is being used' | 45 | #pragma message ("For the sleep routines, Global timer is being used") | | ^~~~~~~ | Finished building libraries parallelly. | make --no-print-directory archive | arm-none-eabi-ar -r ps7_cortexa9_0/lib/libxil.a ps7_cortexa9_0/lib/abort.o ps7_cortexa9_0/lib/asm_vectors.o ps7_cortexa9_0/lib/boot.o ps7_cortexa9_0/lib/close.o ps7_cortexa9_0/lib/cpputest_time.o ps7_cortexa9_0/lib/cpu_init.o ps7_cortexa9_0/lib/errno.o ps7_cortexa9_0/lib/_exit.o ps7_cortexa9_0/lib/fcntl.o ps7_cortexa9_0/lib/fstat.o ps7_cortexa9_0/lib/getpid.o ps7_cortexa9_0/lib/inbyte.o ps7_cortexa9_0/lib/isatty.o ps7_cortexa9_0/lib/kill.o ps7_cortexa9_0/lib/lseek.o ps7_cortexa9_0/lib/_open.o ps7_cortexa9_0/lib/open.o ps7_cortexa9_0/lib/outbyte.o ps7_cortexa9_0/lib/print.o ps7_cortexa9_0/lib/putnum.o ps7_cortexa9_0/lib/read.o ps7_cortexa9_0/lib/_sbrk.o ps7_cortexa9_0/lib/sbrk.o ps7_cortexa9_0/lib/sleep.o ps7_cortexa9_0/lib/time.o ps7_cortexa9_0/lib/translation_table.o ps7_cortexa9_0/lib/unlink.o ps7_cortexa9_0/lib/usleep.o ps7_cortexa9_0/lib/vectors.o ps7_cortexa9_0/lib/write.o ps7_cortexa9_0/lib/xadcps_g.o ps7_cortexa9_0/lib/xadcps_intr.o ps7_cortexa9_0/lib/xadcps.o ps7_cortexa9_0/lib/xadcps_selftest.o ps7_cortexa9_0/lib/xadcps_sinit.o ps7_cortexa9_0/lib/xcoresightpsdcc.o ps7_cortexa9_0/lib/xdevcfg_g.o ps7_cortexa9_0/lib/xdevcfg_hw.o ps7_cortexa9_0/lib/xdevcfg_intr.o ps7_cortexa9_0/lib/xdevcfg.o ps7_cortexa9_0/lib/xdevcfg_selftest.o ps7_cortexa9_0/lib/xdevcfg_sinit.o ps7_cortexa9_0/lib/xdmaps_g.o ps7_cortexa9_0/lib/xdmaps_hw.o ps7_cortexa9_0/lib/xdmaps.o ps7_cortexa9_0/lib/xdmaps_selftest.o ps7_cortexa9_0/lib/xdmaps_sinit.o ps7_cortexa9_0/lib/xemacps_bdring.o ps7_cortexa9_0/lib/xemacps_control.o ps7_cortexa9_0/lib/xemacps_g.o ps7_cortexa9_0/lib/xemacps_hw.o ps7_cortexa9_0/lib/xemacps_intr.o ps7_cortexa9_0/lib/xemacps.o ps7_cortexa9_0/lib/xemacps_sinit.o ps7_cortexa9_0/lib/xgpio_extra.o ps7_cortexa9_0/lib/xgpio_g.o ps7_cortexa9_0/lib/xgpio_intr.o ps7_cortexa9_0/lib/xgpio.o ps7_cortexa9_0/lib/xgpiops_g.o ps7_cortexa9_0/lib/xgpiops_hw.o ps7_cortexa9_0/lib/xgpiops_intr.o ps7_cortexa9_0/lib/xgpiops.o ps7_cortexa9_0/lib/xgpiops_selftest.o ps7_cortexa9_0/lib/xgpiops_sinit.o ps7_cortexa9_0/lib/xgpio_selftest.o ps7_cortexa9_0/lib/xgpio_sinit.o ps7_cortexa9_0/lib/xiicps_g.o ps7_cortexa9_0/lib/xiicps_hw.o ps7_cortexa9_0/lib/xiicps_intr.o ps7_cortexa9_0/lib/xiicps_master.o ps7_cortexa9_0/lib/xiicps.o ps7_cortexa9_0/lib/xiicps_options.o ps7_cortexa9_0/lib/xiicps_selftest.o ps7_cortexa9_0/lib/xiicps_sinit.o ps7_cortexa9_0/lib/xiicps_slave.o ps7_cortexa9_0/lib/xiicps_xfer.o ps7_cortexa9_0/lib/xil_assert.o ps7_cortexa9_0/lib/xil_cache.o ps7_cortexa9_0/lib/xil_clocking.o ps7_cortexa9_0/lib/xil-crt0.o ps7_cortexa9_0/lib/xil_exception.o ps7_cortexa9_0/lib/xil_mem.o ps7_cortexa9_0/lib/xil_misc_psreset_api.o ps7_cortexa9_0/lib/xil_mmu.o ps7_cortexa9_0/lib/xil_printf.o ps7_cortexa9_0/lib/xil_sleepcommon.o ps7_cortexa9_0/lib/xil_sleeptimer.o ps7_cortexa9_0/lib/xil_spinlock.o ps7_cortexa9_0/lib/xil_testcache.o ps7_cortexa9_0/lib/xil_testio.o ps7_cortexa9_0/lib/xil_testmem.o ps7_cortexa9_0/lib/xil_util.o ps7_cortexa9_0/lib/xl2cc_counter.o ps7_cortexa9_0/lib/xplatform_info.o ps7_cortexa9_0/lib/xpm_counter.o ps7_cortexa9_0/lib/xqspips_g.o ps7_cortexa9_0/lib/xqspips_hw.o ps7_cortexa9_0/lib/xqspips.o ps7_cortexa9_0/lib/xqspips_options.o ps7_cortexa9_0/lib/xqspips_selftest.o ps7_cortexa9_0/lib/xqspips_sinit.o ps7_cortexa9_0/lib/xscugic_g.o ps7_cortexa9_0/lib/xscugic_hw.o ps7_cortexa9_0/lib/xscugic_intr.o ps7_cortexa9_0/lib/xscugic.o ps7_cortexa9_0/lib/xscugic_selftest.o ps7_cortexa9_0/lib/xscugic_sinit.o ps7_cortexa9_0/lib/xscutimer_g.o ps7_cortexa9_0/lib/xscutimer.o ps7_cortexa9_0/lib/xscutimer_selftest.o ps7_cortexa9_0/lib/xscutimer_sinit.o ps7_cortexa9_0/lib/xscuwdt_g.o ps7_cortexa9_0/lib/xscuwdt.o ps7_cortexa9_0/lib/xscuwdt_selftest.o ps7_cortexa9_0/lib/xscuwdt_sinit.o ps7_cortexa9_0/lib/xsdps_card.o ps7_cortexa9_0/lib/xsdps_g.o ps7_cortexa9_0/lib/xsdps_host.o ps7_cortexa9_0/lib/xsdps.o ps7_cortexa9_0/lib/xsdps_options.o ps7_cortexa9_0/lib/xsdps_sinit.o ps7_cortexa9_0/lib/xtime_l.o ps7_cortexa9_0/lib/xttcps_g.o ps7_cortexa9_0/lib/xttcps.o ps7_cortexa9_0/lib/xttcps_options.o ps7_cortexa9_0/lib/xttcps_selftest.o ps7_cortexa9_0/lib/xttcps_sinit.o ps7_cortexa9_0/lib/xuartps_g.o ps7_cortexa9_0/lib/xuartps_hw.o ps7_cortexa9_0/lib/xuartps_intr.o ps7_cortexa9_0/lib/xuartps.o ps7_cortexa9_0/lib/xuartps_options.o ps7_cortexa9_0/lib/xuartps_selftest.o ps7_cortexa9_0/lib/xuartps_sinit.o ps7_cortexa9_0/lib/xusbps_endpoint.o ps7_cortexa9_0/lib/xusbps_g.o ps7_cortexa9_0/lib/xusbps_hw.o ps7_cortexa9_0/lib/xusbps_intr.o ps7_cortexa9_0/lib/xusbps.o ps7_cortexa9_0/lib/xusbps_sinit.o | /opt/Xilinx/peta/2021.2/tools/xsct//gnu/aarch32/lin/gcc-arm-none-eabi/bin/../x86_64-oesdk-linux/usr/bin/arm-xilinx-eabi/arm-xilinx-eabi-ar.real: creating ps7_cortexa9_0/lib/libxil.a | Finished building libraries | make[1]: Leaving directory '/proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/fsbl-firmware-2021.2+git999/fsbl-firmware/zynq_fsbl_bsp' | arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c fsbl_hooks.c -o fsbl_hooks.o -Izynq_fsbl_bsp/ps7_cortexa9_0/include -I. | arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c image_mover.c -o image_mover.o -Izynq_fsbl_bsp/ps7_cortexa9_0/include -I. | arm-none-eabi-gcc -O2 -c -MMD -MP -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -c main.c -o main.o -Izynq_fsbl_bsp/ps7_cortexa9_0/include -I. | main.c:216:1: error: unknown type name 'hankf_error_ffdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd' | 216 | hankf_error_ffdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | main.c:218:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'hankf_error_ffdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd' | 218 | hankf_error_ffdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | main.c:218:1: error: unknown type name 'hankf_error_ffdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd' | make: *** [Makefile:35: main.o] Error 1 | WARNING: /proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/temp/run.do_compile.7680:165 exit 1 from 'exit 1' | WARNING: Backtrace (BB generated script): | #1: bbfatal_log, /proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/temp/run.do_compile.7680, line 165 | #2: die, /proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/temp/run.do_compile.7680, line 175 | #3: oe_runmake, /proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/temp/run.do_compile.7680, line 170 | #4: do_compile, /proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/temp/run.do_compile.7680, line 152 | #5: main, /proj/hankf/hankf/zc706/v212/zc706-v211-bsp-peta/build/tmp/work/zc706-xilinx-linux-gnueabi/fsbl-firmware/2021.2+git999-r0/temp/run.do_compile.7680, line 194 | | Backtrace (metadata-relative locations): | #1: bbfatal_log, /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/core/meta/classes/logging.bbclass, line 72 | #2: die, /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/core/meta/classes/base.bbclass, line 56 | #3: oe_runmake, /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/core/meta/classes/base.bbclass, line 65 | #4: do_compile, /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx-tools/classes/xsctapp.bbclass, line 25 NOTE: recipe fsbl-firmware-2021.2+git999-r0: task do_compile: Failed NOTE: Tasks Summary: Attempted 395 tasks of which 386 didn't need to be rerun and 1 failed. Summary: 1 task failed: /home/hankf/proj/zc706/v212/zc706-v211-bsp-peta/components/yocto/layers/meta-xilinx/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2021.2.bb:do_compile Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
本文转载自:博客园