gpt4 book ai didi

arm - Beaglebone Black 的 U-boot 无法构建 - objective-c PU 不支持 THUMB 指令

转载 作者:行者123 更新时间:2023-12-04 13:22:02 70 4
gpt4 key购买 nike

我正尝试按照 Chris Simmonds 在“掌握嵌入式 Linux 编程”中的说明为 beagle bone black 构建 u-boot。我已经构建了交叉工具链,现在正尝试使用该工具链构建 Das U-boot,但由于不支持 THUMB 指令(编译器?BeagleBone?),构建失败。我使用的是 Denx 的 git 存储库 v2018.05 的最新版本。在 Ubuntu 18.04 上构建。

控制台输出如下:

johann@mars:~/uboot-work/u-boot$ make CROSS_COMPILE=arm-cortex_a8-linux-gnueabihf- am335x_evm_defconfig
#
# configuration written to .config
#
johann@mars:~/uboot-work/u-boot$ make CROSS_COMPILE=arm-cortex_a8-linux-gnueabihf-
scripts/kconfig/conf --silentoldconfig Kconfig
CHK include/config.h
UPD include/config.h
CFG u-boot.cfg
GEN include/autoconf.mk
GEN include/autoconf.mk.dep
CFG spl/u-boot.cfg
GEN spl/include/autoconf.mk
CHK include/config/uboot.release
CHK include/generated/version_autogenerated.h
CHK include/generated/timestamp_autogenerated.h
UPD include/generated/timestamp_autogenerated.h
CC lib/asm-offsets.s
cc1: warning: target CPU does not support THUMB instructions
CHK include/generated/generic-asm-offsets.h
CC arch/arm/lib/asm-offsets.s
cc1: warning: target CPU does not support THUMB instructions
CHK include/generated/asm-offsets.h
HOSTCC scripts/dtc/dtc.o
HOSTCC scripts/dtc/flattree.o
HOSTCC scripts/dtc/fstree.o
HOSTCC scripts/dtc/data.o
HOSTCC scripts/dtc/livetree.o
HOSTCC scripts/dtc/treesource.o
HOSTCC scripts/dtc/srcpos.o
HOSTCC scripts/dtc/checks.o
HOSTCC scripts/dtc/util.o
SHIPPED scripts/dtc/dtc-lexer.lex.c
SHIPPED scripts/dtc/dtc-parser.tab.h
HOSTCC scripts/dtc/dtc-lexer.lex.o
SHIPPED scripts/dtc/dtc-parser.tab.c
HOSTCC scripts/dtc/dtc-parser.tab.o
HOSTLD scripts/dtc/dtc
HOSTCC tools/mkenvimage.o
HOSTCC tools/lib/crc32.o
HOSTLD tools/mkenvimage
HOSTCC tools/common/bootm.o
HOSTCC tools/lib/fdtdec.o
HOSTCC tools/fit_image.o
HOSTCC tools/image-host.o
HOSTCC tools/dumpimage.o
HOSTLD tools/dumpimage
HOSTCC tools/mkimage.o
HOSTLD tools/mkimage
CC arch/arm/cpu/armv7/cache_v7.o
cc1: warning: target CPU does not support THUMB instructions
{standard input}: Assembler messages:
{standard input}:42: Error: selected processor does not support `dsb sy' in ARM mode

make[1]: *** [arch/arm/cpu/armv7/cache_v7.o] Error 1
Makefile:1363: recipe for target 'arch/arm/cpu/armv7' failed

make: *** [arch/arm/cpu/armv7] Error 2

最佳答案

我也在看这本书,也遇到了同样的错误。我使用U-Boot的master分支解决了这个问题(日期:2019-03-19,操作系统:Ubuntu:18.04)。

然而,U-Boot 的 master 分支没有 am335x_boneblack_defconfig。我改为使用 am335x_evm_defconfig。

尽管存在这些编译问题,但这本书还是很棒的。

编辑:

经过进一步调查,我发现根本原因是需要使用 ./ct-ng menuconfig 将 fpu 类型设置为“neon-vfpv3”。

按照书上的指示将 float-abi 设置为 hard,fpu-type 也应设置为 neon-vfpv3。否则,Linux 内核和 Barebox/U-boot 都不会被编译。

关于arm - Beaglebone Black 的 U-boot 无法构建 - objective-c PU 不支持 THUMB 指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50284222/

70 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com