[英]Yocto: bitbake command to regenerate all RPM files
I wanted to make some free space and deleted all directories in build/tmp/deploy/rpm/, thinking yocto would detect it and recreate them at the next bitbake call... it was a mistake ! 我想腾出一些可用空间并删除build / tmp / deploy / rpm /中的所有目录,以为yocto会检测到它并在下一次bitbake调用时重新创建它们……这是一个错误! :( :(
Here's the bitbake error just in case: 以防万一,这是位烘烤错误:
bitbake <image_name>
[...]
ERROR: ... do_rootfs: minicom not found in the base feeds (<image_name> corei7-64-intel-common corei7-64 core2-64 x86_64 noarch any all).
[...list of every package...]
Is there any way to force the regeneration of every rpms using bitbake ? 有什么方法可以使用bitbake来强制每转的再生吗? Forcing the regeneration with bitbake -f -c package_write_rpm <package>
works, but I didn't find the command to do it all at once. 使用bitbake -f -c package_write_rpm <package>
强制重新生成bitbake -f -c package_write_rpm <package>
可以工作,但是我没有找到一次完成所有操作的命令。
I tried cleaning the state of the native rpm packages thinking it might detect it and invalidate the rpm files states, but no luck: 我试着清理本机rpm软件包的状态,以为它可以检测到它并使rpm文件状态无效,但是没有运气:
bitbake -f -c cleanall nativesdk-rpm nativesdk-rpmresolve rpmresolve-native rpm-native
bitbake <image_name>
I also thought this would work, but it didn't: 我还认为这可以工作,但是没有:
bitbake -f -c package_write_rpm <image_name>
I will try to hack something with bitbake-layers show-recipes
and xargs
, but it would be cool to have a proper bitbake command. 我将尝试使用bitbake-layers show-recipes
和xargs
来破解某些东西,但是拥有适当的bitbake命令会很酷。
I am using Yocto 2.1 (Krogoth). 我正在使用Yocto 2.1(Krogoth)。
Thanks ! 谢谢 !
I ended up doing the following script and use bitbake dependency tree to get the list of packages (thanks to this yocto/bitbake reference page ): 我最终完成了以下脚本,并使用bitbake依赖关系树来获取软件包列表(由于此yocto / bitbake参考页 ):
# bitbake -g <image> && cat pn-depends.dot | grep -v -e '-native' | grep -v digraph | grep -v -e '-image' | awk '{print $1}' | sort | uniq | grep -v "}" | grep -v cross | grep -v gcc | grep -v glibc > packages-list.txt
# cat packages-list.txt | xargs bitbake -f -c package_write_rpm
Maybe there is a more straightforward solution ? 也许有一个更直接的解决方案? For now this worked. 目前,这可行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.