Buildroot 2015.01编译St B2232板SPL(MLO)问题求助
解决ST B2232板SPL编译报错问题
针对你遇到的第二个编译错误(找不到start.o且路径出现双斜杠),可以尝试以下步骤排查修复:
彻底清理编译环境后重新配置
残留的旧编译文件可能导致路径或依赖错乱,先执行清理:make distclean make st_b2232_stxd337_emmc_defconfig之后完整指定交叉编译参数重新编译:
make ARCH=arm CROSS_COMPILE=arm-starkl-linux-gnueabihf-检查板卡SPL配置完整性
进入menuconfig确认SPL相关配置是否正确启用且完整:make ARCH=arm menuconfig重点检查:
CONFIG_SPL已勾选- 对应CPU架构的配置(如
CONFIG_ARCH_STXD337)是否正确设置 - SPL的链接脚本路径是否正确指定(避免路径拼接错误)
排查路径变量拼接错误
报错中的arch/arm/cpu//built-in.o双斜杠说明某个路径变量为空,导致拼接异常。可以查看scripts/Makefile.spl中CPU_DIR相关规则,确认SPL编译时是否正确指向该板卡对应的CPU子目录(比如arch/arm/cpu/armv7)。若该变量未正确赋值,需在板卡的配置文件或Makefile中补充设置。检查板卡目录下的SPL编译规则
进入board/st/st_b2232目录,查看该板卡专属的Makefile或配置文件,确认是否包含SPL编译所需的源文件列表、链接脚本路径等配置。部分板卡需要单独指定SPL的编译依赖,缺失会导致无法生成start.o这类基础文件。考虑U-Boot版本适配问题
你使用的U-Boot版本是2015.01,属于较老版本,可能对B2232板的SPL支持存在不完善的地方。如果上述方法都无效,可以尝试升级到该板卡官方适配的较新版本U-Boot后再编译测试。
内容的提问来源于stack exchange,提问作者user30944768
相关产品推荐
相关产品推荐

