2

如何在 arago 项目构建中编写自己的配方包?我知道它可以是 bitbake 文件。但是我怎么写,不知道。我在互联网上搜索,但未能找到任何好的来源。有人可以为我提供链接或示例吗?

问候
Linux 学习者。

4

4 回答 4

6

使用 Bitbake 使用 Yocto 创建自己的食谱:

将 Yocto Project 用于嵌入式系统。它的文档和支持很棒。你可以开始Yocto Project了。

构建自己的配方(第一次构建需要相当长的时间)

获取 Yocto 项目:

按照给定Gumstix-YoctoProject-Repo的分步程序操作,直到bitbake gumstix-console-image

现在你的机器上有了 yocto 项目。开始编写自己的食谱。我将向您展示如何创建一个 hello world 食谱。

1) 转到/yocto/poky/<create a folder as meta-robot>
2) 转到/yocto/poky/meta-robot/<create a folder as /recipes-robot> and <another folder /conf>
3) 转到/yocto/poky/meta-robot/recipes-robot/<create another folder /hello>
4) 转到/yocto/poky/meta-robot/recipes-robot/hello/<create a file as 'hello_2.7.bb'>
5) 将此粘贴到您的hello_2.7.bb

DESCRIPTION = "GNU Helloworld application" 
SECTION = "examples" 
LICENSE = "GPLv3+" 
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" 
PR = "r0" 
SRC_URI[md5sum] = "fc01b05c7f943d3c42124942a2a9bb3a"
SRC_URI[sha256sum] = "fd593b5bcf6d1bb6d7d1bb7eefdccdc0010cf2c4985ccb445ef490f768b927c0"
SRC_URI = "ftp://ftp.gnu.org/gnu/hello/hello-2.7.tar.gz" 
inherit autotools gettext 

6) 转到/yocto/poky/meta-robot/conf/<create a file as layer.conf>
7) 将其粘贴到您的layer.conf文件中

# We have a conf directory, append to BBPATH
BBPATH .= ":${LAYERDIR}"

# We have a recipes directory, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"

BBFILE_COLLECTIONS += "meta-robot"
BBFILE_PATTERN_meta-robot := "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-robot = "7"

8)打开/yocto/build/conf/bblayers.conf文件9)在文件
中添加您的食谱文件夹路径, 例如: 10)打开文件并在下面添加您的食谱名称,即 11)打开您的终端类型 $ 12)$ 13)类型bblayers
/home/xyz/yocto/poky/meta-robot \
/yocto/poky/meta-gumstix-extras/recipes-images/gumstix/gumstix-console-image.bbTOOLS_INSTALLhello \
cd /yocto
source ./poky/oe-init-build-env
bitbake gumstix-console-image

而已。您的图像与您自己的包裹将在一段时间内准备好。

您可以在/yocto/build/tmp/deploy/images/

一切顺利。

于 2013-10-31T15:10:14.007 回答
2

Arago 是一个基于 OpenEmbedded 项目和 Bitbake 构建工具的发行版。从逻辑上讲,您应该从Bitbake 手册OpenEmbedded 手册开始。这些有点过时了,但在大多数情况下仍然相关。之后,这里有一个很好的简单教程

我还发现FreeNode上的#oe 频道非常有用。

编辑:有一个更新的 Yocto/Poky手册,其中也涵盖了 Bitbake 和 OpenEmbedded。

于 2013-09-24T07:16:47.983 回答
1

我认为其他人回答创建新配方实际上是创建一个层。

你可以这样做

$ . ./setup-environment build-dir

$ yocto-layer create custom  #here you may change the name to your custom layer name.

如果你这样做,它会自动要求你为你创建一个示例食谱。

但我想这不是问题所在。

您需要更改或自定义 .bb 文件。

它有几个领域,即

SOURCE_URI=""

这是您获取软件包源 tar 文件的地方。

然后 do_compile = " " 和 do_install = " "。对于像你我这样的新手来说,这可能并不容易。

于 2015-04-10T06:43:29.407 回答
1

您可以使用 create-recipe 或 recipetool 创建配方。

检查下面的链接以了解它们的用法

http://ashversity.blogspot.in/2016/02/creating-new-yocto-recipe.html

于 2016-02-03T12:48:18.657 回答