首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在buildroot中重建boot.scr

在buildroot中重建boot.scr
EN

Stack Overflow用户
提问于 2021-02-09 17:51:02
回答 3查看 510关注 0票数 1

有没有办法在不清理整个项目的情况下重建boot.scr脚本?我删除了旧的boot.scr脚本,不知道如何生成新的脚本(只有make clean有帮助)

设置变量BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE。

make uboot-dirclean uboot-tools-dirclean帮不上忙。

我发现创建boot.scr的mkimage脚本是从uboot-tools安装规则调用的,但是即使我清除了uboot-tools,boot.scr也不再生成

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-02-11 13:20:35

如果你清理host-uboot-tools,它会重建你的脚本。原因是在uboot-tools.mk文件的HOST_UBOOT_TOOLS_INSTALL_CMDS函数中调用了mkimage (生成脚本)。

由于您的个人脚本位于您的外部buildroot目录中,并且您可能希望快速迭代编写和测试它,因此您每次都希望这样做。每次运行make时,有一种方法可以做到这一点。不需要清理任何东西。后期图像脚本是关键。

例如,创建post-image.sh脚本并在您的defconfig文件中指定它。

代码语言:javascript
运行
复制
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/board/RK3308/post-image.sh"

在post-iamge.sh脚本中,运行命令以生成引导脚本,以下是一个示例:

代码语言:javascript
运行
复制
# Generate the uboot script
$ubootName/tools/mkimage -C none -A arm -T script -d $BR2_EXTERNAL_RK3308_PATH/board/RK3308/boot.cmd $BINARIES_DIR/boot.scr

每次运行make时,都会重新生成boot.scr。

如果您想在上下文中查看所有这些内容,请使用here is an external buildroot repo for the rk3308 chipset

这是post-image.sh file

这是the definition of that file in the defonconfig file

票数 2
EN

Stack Overflow用户

发布于 2021-08-01 19:43:24

公认的答案是正确的,但有更简单的方法。boot.scr是由host-uboot-tools编译的,而不是由uboot-tools编译的,因此您只需执行以下命令:

代码语言:javascript
运行
复制
make host-uboot-tools-rebuild
票数 4
EN

Stack Overflow用户

发布于 2021-02-10 15:01:33

U-Boot提供了工具mkimage。在基于Debian的发行版中,它位于u-boot-tools包中。假设您有一个包含脚本命令的文件boot.txt,您可以使用以下命令创建boot.scr

代码语言:javascript
运行
复制
mkimage -T script -n 'My fancy title' -d boot.txt boot.scr
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66116553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档