编译 Yocto 项目

Compile Yocto project

我看到 在这里讨论如何在 yocto 中编译源代码。我使用它的第一种方法如下:

yocto-layer create Mylayer

我已经创建了 helloworld 示例。源文件 helloworld.c 的位置在 .bb 文件位置的子文件夹中。我正在为此使用 makefile。

我的目标是在 helloworld.c 所在的位置添加 3 个文件夹(1.build,2.Include 和 3.source)。构建目录将包含 make 文件,源目录包含所有 .c/.cpp 文件,包含文件夹包含包含文件。

当我在 helloworld.c 的位置添加所有内容时,它编译成功但是当我按照上面提到的方式安排源时,它没有编译。

如何在 yocto 中排列这些目录? .bb 或 .bbalyer 文件会发生变化吗?

在您的食谱中添加以下行

FILESEXTRAPATHS_prepend := "${THISDIR}:"
SRC_URI += "file://hello/* "

同时创建一个 directory hello,其中存在 .bb,然后将所有数据复制到此 hello directory。 现在你的 hello 目录应该如下所示
你好
|_build
|_include
|_来源

在我看来,将源代码存储在食谱旁边并不是一个好主意 - 除非 这是出于学习目的的某种示例。

请参阅 meta/ 层的食谱 - 这也是基于此主层食谱的好方法。你不会找到与食谱一起提交的源代码,在我看来,当你开始理解时 Yocto/Bitbake 我建议你将源代码存储在专用存储库中,你的食谱应该使用 fetcher 库指向这个存储库 - SRC_URI.