[英]Yocto: how to remove a layer without rebuild all
I'm playing with a Yocto project that has in its conf/bblayers.conf
file the following line:我正在玩一个 Yocto 项目,该项目在其conf/bblayers.conf
文件中包含以下行:
ADDONSLAYERS += "${@'${OEROOT}/layers/meta-qt5' if os.path.isfile('${OEROOT}/layers/meta-qt5/conf/layer.conf') else ''}"
I partially bitbaked the project but now I want to try to disable the whole meta-qt5 layer.我对项目进行了部分 bitbaked,但现在我想尝试禁用整个 meta-qt5 层。 After commenting out the line above, how to remove the already built files from the output folder and go on with the others?在注释掉上面的行之后,如何从 output 文件夹和 go 文件夹中删除已经构建的文件?
I tried with bitbake -c cleansstate meta-qt5
but it doesn't work.我尝试使用bitbake -c cleansstate meta-qt5
但它不起作用。 I guess it works with recipes only, and not with whole layers.我想它只适用于食谱,而不适用于整个层。
Easiest way to clean a build is to remove TMPDIR temporary folder (default is <build>/tmp
).清理构建的最简单方法是删除TMPDIR临时文件夹(默认为<build>/tmp
)。
That will remove previous compilation results, but those are also kept in SSTATE_DIR cache folder.这将删除以前的编译结果,但这些结果也保存在SSTATE_DIR缓存文件夹中。 Next build will not rebuild all, it will reuse cache results to speed it up.下一次构建不会全部重建,它会重用缓存结果以加快速度。
Then, you can clean your cache folder for obsolete entries with sstate-cache-management.sh script:然后,您可以使用sstate-cache-management.sh脚本清除缓存文件夹中的过时条目:
# Example of usage (after sourcing oe-init-build-env)
sstate-cache-management.sh --cache-dir=../sstate-cache -d -y
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.