Linux 在Yocto构建中包含应用程序映像

Linux 在Yocto构建中包含应用程序映像,linux,yocto,Linux,Yocto,我觉得我已经尽了我最大的努力来寻找答案,但不可否认,也许我没有使用正确的搜索键 我正在使用Yocto构建一个Linux内核,我可以看到在local.conf中添加行IMAGE\u INSTALL\u append,然后是我的代码。您希望包括的其他图像是包括connman,dropbear等内容的方式。这很好 我想做的是包含我编写的应用程序的图像。我们称它为HelloWorld.exe,我希望它与一个子目录一起被塞进它自己的目录(MyHello),子目录还包含一些操作HelloWorld所必需的文

我觉得我已经尽了我最大的努力来寻找答案,但不可否认,也许我没有使用正确的搜索键

我正在使用Yocto构建一个Linux内核,我可以看到在
local.conf
中添加行
IMAGE\u INSTALL\u append
,然后是我的代码。您希望包括的其他图像是包括
connman
dropbear
等内容的方式。这很好

我想做的是包含我编写的应用程序的图像。我们称它为
HelloWorld.exe
,我希望它与一个子目录一起被塞进它自己的目录(
MyHello
),子目录还包含一些操作
HelloWorld
所必需的文件

我确信有不同的方法可以做到这一点,但我只需要一种。我需要知道:

  • 在我的Ubuntu系统上,我应该将我的
    HelloWorld.exe
    及其附属文件和子目录放在哪里,它们将在构建过程中被提取并包含在映像中
  • 如何更改
    local.conf
    ,以确保最终映像将包含我的应用程序及其支持文件和目录,我需要它位于目标上的位置

  • 多谢各位。马克

    我相信在Yocto中会有点复杂:

  • 您需要创建您的应用程序。让我们说
    metahello
    。此文件夹需要与所有其他
    meta
    层位于同一位置,也需要与
    poky
    目录位于同一位置

  • 您需要在
    bblayers.conf
    文件中启用该层。为此,您可以使用
    bitbake层添加层/path/to/meta hello

  • 现在,在您的
    meta hello
    中,在文件夹
    recipes hello/hello

  • 您的
    hello.bb
    文件位于上述文件夹中,您可以决定使用
    automake
    makefile
    或使用

  • 完成后,在
    构建
    目录中执行
    bitbake hello
    ,这将编译并提供错误(如果有)。解决它们,一旦编译成功,在
    local.conf
    文件中添加
    IMAGE\u INSTALL\u append=“hello”

  • 这是一种方法。另一个是使用

    很抱歉,没有比这更简单的方法了,因为Yocto确实有一个陡峭的学习和发展曲线

    实例
    • 你可以看看这篇博文,其中创建了一个简单的
      daemonize
      automake示例。你也可以在GitHub上找到它
    devtools
    工作流

    打包外部二进制文件
    对于这种情况,请使用

    让我添加一个很棒的视频,我在
    devtools
    上找到了这个视频,您可以使用它来制作非常好的自动配方,以便于开发,但请注意,您的
    helloworld.exe
    可能在本机机器上编译,而硬件机器可能具有完全不同的体系结构。我正在目标机器上构建应用程序。我真的不需要(或想要)bitbake在Ubuntu上编译。我会给它所需要的所有二进制文件。我只是想用配方来安装它。@Jethro63你真的找到答案了吗?我可能有相同的东西(现成的二进制文件),并希望他们在一个董事会上使用yocto?如果你已经设法让事情进展顺利,你能在这里写下你的答案吗?Hi Shan:我还在努力。还有其他十几件让我分心的事。但如果我有任何进步,我会发布我的进步。您提到的git上的示例项目很有帮助。