如何在Yocto配方中提供“配置”选项?

18
我想在Yocto中编写一个配方,以构建我的自定义组件。我希望根据不同的机器启用一些标志。
例如:
如果机器是x86
那么我的配置命令应该像这样:
./configure --enable-x86

如果是x64

./configure --enable-x64

我正在使用自动化工具进行构建。请帮我编写配方和"configure.ac"以实现这一目标。

PS:我对Yocto非常陌生。

1个回答

21

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

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

只有当您的架构(x86 / x64)被定义为OVERRIDE值的一部分时,才能这样做。 让我们看看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值的一部分,则可以按照先前描述的方式定义配置选项。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接