Linux 在buildroot中使用生成后脚本

Linux 在buildroot中使用生成后脚本,linux,beagleboneblack,buildroot,post-build,rootfs,Linux,Beagleboneblack,Buildroot,Post Build,Rootfs,我使用buildroot构建自己的rootfs,并使用post-build.sh对其进行自定义 在具体操作中,我在/opt中使用 touch $TARGET_DIR/opt/testfile01.txt 并运行make命令。我检查了即将推出的rootfs,testfile01.txt位于/opt中。一切都好 然后我将后期构建的内容更改为sh touch $TARGET_DIR/opt/testfile02.txt 然后再次运行make命令 我观察到的行为是,在第二次make之后,这两个文件(

我使用buildroot构建自己的rootfs,并使用post-build.sh对其进行自定义

在具体操作中,我在/opt中使用

touch $TARGET_DIR/opt/testfile01.txt
并运行make命令。我检查了即将推出的rootfs,testfile01.txt位于/opt中。一切都好

然后我将后期构建的内容更改为sh

touch $TARGET_DIR/opt/testfile02.txt
然后再次运行make命令

我观察到的行为是,在第二次make之后,这两个文件(testfile01和testfile02)都存在于rootfs中。 同时,删除rootfs并运行make命令不会改变此行为

在buildroot手册中,在生成后脚本中进行更改后,不需要进行完全重建

如何改变这种行为

谢谢你的帮助


编辑:buildroot-2018.02.2,Ubuntu 18.04 LTS对编译后脚本所做的更改直接在
TARGET\u DIR
中完成。因此,如果构建后脚本做了一件事,然后将其更改为做另一件事,那么无论构建后脚本的第一个版本是否仍然可见


手册中所说的是,您不需要执行完整的重建就可以重新执行生成后脚本。它并没有说无论构建后脚本做什么,都会在部分重建之间“清理”。因此,您正在观察预期的行为。

对生成后脚本所做的更改直接在
TARGET\u DIR
中完成。因此,如果构建后脚本做了一件事,然后将其更改为做另一件事,那么无论构建后脚本的第一个版本是否仍然可见

手册中所说的是,您不需要执行完整的重建就可以重新执行生成后脚本。它并没有说无论构建后脚本做什么,都会在部分重建之间“清理”。因此,您正在观察预期的行为