我使用crosstool ng项目为BeagleBone Black SBC构建了一个自定义工具链。我遵循了“掌握嵌入式Linux编程”一书中的说明,其中简单地使用了arm-cortex_a8-linux-gnueabi
配置。构建工具链可以很好地工作,但在使用它交叉编译Linux内核时(使用内核版本4.19.70中的multi_v7_defconfig
),我得到了一大堆以下错误:
/tmp/ccMrtEje.s:43: Error: selected processor does not support 'dmb ish' in ARM mode
其中dmb ish
可以是工具链汇编程序找到的任何不受支持的指令。我尝试了带有bb.org_defconfig
的BeagleBone here的官方内核分支,所以我使用了它,我得到了同样的错误。这似乎是一个工具链问题。我会不会在配置工具链时遗漏了什么?我已经将FPU设置为硬件,但仍然不熟悉很多配置选项。
发布于 2019-09-21 15:52:39
我使用以下命令为您的目标配置构建了4.19.70内核,使用以下命令时没有任何问题:
wget "https://developer.arm.com/-/media/Files/downloads/gnu-a/8.3-2019.03/binrel/gcc-arm-8.3-2019.03-x86_64-arm-eabi.tar.xz?revision=402e6a13-cb73-48dc-8218-ad75d6be0e01&la=en" -O gcc-arm-8.3-2019.03-x86_64-arm-eabi.tar.xz
tar Jxf gcc-arm-8.3-2019.03-x86_64-arm-eabi.tar.xz
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.70.tar.xz
tar Jxf linux-4.19.70.tar.xz
CROSS_COMPILE=$(pwd)/gcc-arm-8.3-2019.03-x86_64-arm-eabi/bin/arm-eabi- ARCH=arm make -C linux-4.19.70 mrproper multi_v7_defconfig bzImage
ls -gG linux-4.19.70/arch/arm/boot/zImage
-rwxrwxr-x 1 8655360 Sep 21 03:49 linux-4.19.70/arch/arm/boot/zImage
我希望这能帮到你。
https://stackoverflow.com/questions/57826803
复制相似问题