Yocto在修改源代码后重建图像

Yocto在修改源代码后重建图像,yocto,bitbake,openembedded,Yocto,Bitbake,Openembedded,在对驱动程序源代码进行一些修改后,如何重建映像 我尝试了bitbake-f-c编译和bitbake,但在驱动程序中找不到修改过的设置。有人能告诉我如何用修改过的代码重建图像吗。我想你想重新生成整个图像,不是吗?如果是,可以尝试以下命令以确保bitbake不会使用sstate缓存: bitbake image-name -c cleansstate && bitbake image-name 如果您只想重建内核,请用virtual/kernel(或要重建的任何配方的名称)替换映像

在对驱动程序源代码进行一些修改后,如何重建映像


我尝试了bitbake-f-c编译和bitbake,但在驱动程序中找不到修改过的设置。有人能告诉我如何用修改过的代码重建图像吗。

我想你想重新生成整个图像,不是吗?如果是,可以尝试以下命令以确保bitbake不会使用sstate缓存:

bitbake image-name -c cleansstate && bitbake image-name
如果您只想重建内核,请用virtual/kernel(或要重建的任何配方的名称)替换映像名称

注意,do_cleansstate任务将删除配方${WORKDIR}

有关进一步资料:

在直接在${WORKDIR}中进行此类修改的情况下,除非进行测试,否则不应进行此类修改,执行以下命令就足够了:

bitbake virtual/kernel -f -c compile


我猜你想重新生成整个图像,不是吗?如果是,可以尝试以下命令以确保bitbake不会使用sstate缓存:

bitbake image-name -c cleansstate && bitbake image-name
如果您只想重建内核,请用virtual/kernel(或要重建的任何配方的名称)替换映像名称

注意,do_cleansstate任务将删除配方${WORKDIR}

有关进一步资料:

在直接在${WORKDIR}中进行此类修改的情况下,除非进行测试,否则不应进行此类修改,执行以下命令就足够了:

bitbake virtual/kernel -f -c compile


如果您没有直接在${WORKDIR}中进行修改,则必须将SRCREV设置为新哈希并增加PR。然后输入命令

bitbake <image-name>
bitbake
它会再次编译一个包,并使用您的更改创建新映像

如果您在${WORKDIR}中进行了更改,请添加、提交并将其推送到您的存储库中,然后按照上面的步骤操作。这是最干净的解决方案

其他解决方案建议的命令:

bitbake <image-name> -c cleansstate 
bitbake-c cleansstate

将导致所有包重新生成,如果没有sstate镜像,这可能需要很长时间

如果您没有直接在${WORKDIR}中进行修改,则必须将SRCREV设置为新哈希并增加PR。然后输入命令

bitbake <image-name>
bitbake
它会再次编译一个包,并使用您的更改创建新映像

如果您在${WORKDIR}中进行了更改,请添加、提交并将其推送到您的存储库中,然后按照上面的步骤操作。这是最干净的解决方案

其他解决方案建议的命令:

bitbake <image-name> -c cleansstate 
bitbake-c cleansstate
将导致所有包重新生成,如果没有sstate镜像,这可能需要很长时间

由于${WORKDIR}中的更改将在清理后重写,因此可以通过命令
devtool modify

默认情况下,配方代码将放入tmp/workspace/source/directory 现在,您可以像往常一样自由修改代码并使用
bitbake
进行简单构建

修改完成后,您可以轻松地将更改保存为原始配方代码的补丁(只要是开源和下载的):

  • 在工作区中提交更改
  • 为了自动创建补丁并将其附加到配方,请使用命令
    devtool recipe update-a
由于${WORKDIR}中的更改将在清理后重写,因此您可以通过命令
devtool modify

默认情况下,配方代码将放入tmp/workspace/source/directory 现在,您可以像往常一样自由修改代码并使用
bitbake
进行简单构建

修改完成后,您可以轻松地将更改保存为原始配方代码的补丁(只要是开源和下载的):

  • 在工作区中提交更改
  • 为了自动创建补丁并将其附加到配方,请使用命令
    devtool recipe update-a