Yocto项目添加ARM工具链报错:SUPPORTED文件未找到
针对你遇到的cp: cannot stat '.../SUPPORTED': No such file or directory错误,可按以下步骤排查解决:
校验工具链包完整性
重新下载并解压gcc-arm-11.2-2022.02-x86_64-arm-none-linux-gnueabihf工具链包,避免因下载中断或解压错误导致文件缺失。可通过官方提供的MD5/SHA256校验值验证包的完整性。确认配方文件的文件引用
打开meta-arm-toolchain/recipes-devtools/external-arm-toolchain/external-arm-toolchain.bb,检查是否包含SRC_URI += "file://SUPPORTED"。如果缺失这条配置,BitBake不会将files目录下的SUPPORTED文件复制到工作目录,需添加该语句后重新构建。清理缓存并重新构建
执行以下命令清理工具链配方的工作状态,避免缓存残留问题:bitbake -c cleansstate external-arm-toolchain之后重新启动构建流程。
验证EXTERNAL_TOOLCHAIN路径
确保local.conf中EXTERNAL_TOOLCHAIN配置的是工具链解压后的绝对路径,路径中不能包含空格或特殊字符,例如:EXTERNAL_TOOLCHAIN = "/home/yourname/gcc-arm-11.2-2022.02-x86_64-arm-none-linux-gnueabihf"确认架构兼容性
检查工具链是否支持你的目标架构cortexa7t2hf-neon-vfpv4:- 进入工具链的
bin目录 - 执行
./arm-none-linux-gnueabihf-gcc -v
查看输出中的Target字段,确认与你的MACHINE架构匹配。
- 进入工具链的
同步meta-arm分支版本
确保meta-arm仓库的kirkstone分支与你使用的Yocto Project版本完全匹配,重新克隆并切换分支:git clone -b kirkstone https://git.yoctoproject.org/git/meta-arm替换原有的meta-arm层目录,再重新构建。
内容的提问来源于stack exchange,提问作者jesusjimsa

