我在arm64系统上使用U-boot。我发现很奇怪,U-boot没有这个架构的文件夹(arch中没有文件夹aarch64)。这不允许我使用命令编译它:
make CROSS_COMPILE=aarch64-linux-gnu- ARCH=aarch64
相反,我必须使用:
make CROSS_COMPILE=aarch64-linux-gnu-
然而,我很顽固,决定强迫这一点并将arch / arm文件夹复制到arch / aarch64
然而(叹息,如预期的那样)我现在有一些问题,U-boot创建了一些文件夹的符号链接。示例:proc - > proc-arm and arch - >拱armv8 但是这些链接放在arm文件夹中,而不是放在aarch64文件夹中。
我试图修改mkconfig文件,但它似乎仍无效。
答案 0 :(得分:0)
显然U-boot是一个骗子。在具体执行电路板配置后:
if [ "${ARCH}" -a "${ARCH}" != "${arch}" ]; then
echo "Failed: \$ARCH=${ARCH}, should be '${arch}' for ${BOARD_NAME}" 1>&2
exit 1
fi
继续强行切换到手臂:
# Test above needed aarch64, now we need arm
#
if [ "${arch}" = "aarch64" ]; then
arch="arm"
fi
我想我也理解他们为什么选择这样做。快速回顾一下我的提交,发现了很多重复的代码,这些代码很难跟踪。