Yocto Morty分支执行bitbake core-image-minimal触发sstate_eventhandler2错误
解决Yocto Morty分支
bitbake core-image-minimal时的sstate_eventhandler2错误 嘿,我在折腾Yocto Morty分支的时候也碰到过这个错误,大概率是共享状态(sstate)缓存出问题了——毕竟第一次构建或者切换机器配置后,缓存很容易因为不兼容、损坏或者权限问题出状况。给你几个亲测有效的解决步骤:
1. 先清理损坏的sstate缓存
这是最常见的修复方式,直接把出问题的缓存清掉就行:
# 方式一:针对目标镜像清理sstate缓存 bitbake -c cleansstate core-image-minimal # 方式二:彻底删除整个sstate缓存目录(更彻底) rm -rf build-qemuarm/sstate-cache/
2. 检查远程sstate镜像配置(如果有的话)
如果你之前在local.conf里配置了远程sstate源,可能和Morty分支的本地缓存不兼容,先把它注释掉试试:
打开build-qemuarm/conf/local.conf,找到类似下面的行,加个#注释掉:
# SSTATE_MIRRORS ?= "file://.* http://xxx.xxx.xxx/sstate/PATH;downloadfilename=PATH"
3. 确认目录权限没问题
有时候缓存文件创建失败也会触发这个错误,确保当前用户对构建目录有完整权限:
sudo chown -R $USER:$USER build-qemuarm/
4. 重新初始化构建环境
偶尔环境变量会有残留,重新走一遍初始化流程:
cd poky source oe-init-build-env build-qemuarm
之后再重新执行bitbake core-image-minimal
5. 确认Morty分支的代码完整性
如果是刚克隆的仓库,可能子模块没同步全,先把依赖拉齐:
cd poky git submodule update --init --recursive
终极方案:重建构建目录
如果上面的步骤都没用,那就狠一点,删掉整个构建目录重新来:
rm -rf build-qemuarm/ source oe-init-build-env build-qemuarm # 重新设置机器配置 echo 'MACHINE ?= "qemuarm"' >> build-qemuarm/conf/local.conf bitbake core-image-minimal
内容的提问来源于stack exchange,提问作者flashburn
相关产品推荐
相关产品推荐

