我在基于IMX6的SOM模块上使用嵌入式Linux。 我想修补我的内核,它工作正常,它已被修补,但我想添加一些功能。 我在源上应用旧补丁,并添加我的代码,并创建一个新的补丁。
在yocto中,我将我的补丁添加到配方并进行bitbake,我使用新加载的内核启动电路板,似乎它没有我的修改!
对于bitbake我的新内核,我输入:
bitbake -c clean linux-toradex-fsl
bitbake linux-toradex-fsl
它编译没有任何错误,我将我的uImage复制到我的tftp文件夹中,但我的功能似乎没有被执行。
所以我尝试使用
创建一个简单的补丁printk(KERN_WARNING"This is a test\n");
我将其置于另一个警告之后,调用并显示。
它也不起作用。
我检查-c devshell
,我的修改应用于yocto,补丁适用于此。
我也检查了uImage文件,它有相同的大小,有或没有我的补丁。
你对这个问题有什么想法吗?
此致 皮埃尔奥利弗
经过一些尝试我找到了解决方案,我只需要运行
bitbake -c cleansstate linux-toradex-fsl
bitbake my-image
图像被修补后的内核咬了一口。
答案 0 :(得分:2)
Bitbake很有趣 - 干净。它试图保留一个状态目录,所以-clean只是在makefile中运行正常的“clean”,但是makefile可以被共享状态短路,这可以包括从之前的构建中压缩预构建的二进制文件。试试这个:
bitbake -c cleansstate linux-toradex-fsl
bitbake linux-toradex-fsl
注意清除状态中的额外“s”(干净的共享状态)。