如何为"配置"提供选项使用yocto食谱?

时间:2014-09-23 12:24:02

标签: linux cross-compiling autotools yocto recipe

我想在yocto中写一个配方来构建我的自定义组件。在那里我想根据机器启用一些标志。

例如:

如果machine是x86

我的configure命令应该是:

./configure --enable-x86

如果是x64

./configure --enable-x64

我正在使用自动工具进行构建。请帮我写配方以及“configure.ac”来实现这一目标。

ps:我对yocto很新。

1 个答案:

答案 0 :(得分:16)

您可以使用 EXTRA_OECONF 提供配置选项。在这里,您还可以根据您的架构为其添加值。

EXTRA_OECONF_append_x86="--enable-x86"
EXTRA_OECONF_append_x64="--enable-x64"

仅当您的体系结构(x86 / x64)定义为OVERRIDE值的aprt时,才能执行此操作。让我们看看 OVERRIDE 值是什么:

Yocto bitbake配置值在 poky / meta / conf / bitbake.conf 中定义。在该文件中,有一个名为 OVERRIDE 的变量。 bitbake配置中 OVERRIDE 的样本值如下所示:

OVERRIDES = "${TARGET_OS}:${TRANSLATED_TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:${CLASSOVERRIDE}:forcevariable"

当您运行 bitbake -e 并收集输出时,OVERRIDE的值会根据您的配置转换为。

OVERRIDES="linux:i586:build-linux:pn-defaultpkgname:x86:qemuall:qemux86:poky:class-target:forcevariable:libc-glibc"

在您的设置中,如果您可以将x86 / x64视为OVERRIDE值的一部分,那么您可以如前所述定义配置选项。