Yocto 中变量的解析是如何工作的?
How does the parsing of variables in Yocto work?
有一些变量我只是使用而不知道它的作用。有人可以解释 Yocto 中所有这些解析背后的逻辑吗?
下划线有什么作用?除了 _append_pn
之外还有哪些可用参数?
PACKAGECONFIG_append_pn-packagename = " packagename"
PREFERRED_VERSION_linux-imx_mx6 = "3.10.17"
SRC_URI_append_toolchain-clang = " file://0004-Remove-clang-unsupported-compiler-flags.patch "
EXTRA_OECONF_append_arm = " --enable-fpm=arm"
这个怎么样?我知道这样添加是单选一个包,但是怎么操作呢?
LICENSE_FLAGS_WHITELIST_append = " commerical_packagename"
有人还提到了一些对他们有用的奇怪的东西:
IMAGE_INSTALL_append_machine1 += " package1"
文档很好地涵盖了这一点:https://www.yoctoproject.org/docs/latest/bitbake-user-manual/bitbake-user-manual.html#basic-syntax
较长的版本是 _ 引入了覆盖,这是一种表达 "do something special" 而不仅仅是分配的方式。
有些是append、prepend等操作。
富 = “1”
FOO_append = "2"
FOO 现在是“12”,因为 2 附加到 1。
(_prepend 符合您的预期)
_remove 可用于从以空格分隔的列表中删除项目。
FOO = "1 2 3"
FOO_remove = "2"
FOO 现在是“1 3”。
pn_[foo]是对特定配方名称的覆盖(历史命名,是包名,但实际上是指配方)。所以你的 local.conf 可以做:
EXTRA_OEMAKE_pn-foo = "bar"
您刚刚为 foo 配方设置了 EXTRA_OEMAKE,而且只是 foo 配方。
还有其他覆盖。这些架构都有覆盖,因此 _arm _x86 _mips 等指定分配特定于这些架构。
有一些变量我只是使用而不知道它的作用。有人可以解释 Yocto 中所有这些解析背后的逻辑吗?
下划线有什么作用?除了 _append_pn
之外还有哪些可用参数?
PACKAGECONFIG_append_pn-packagename = " packagename"
PREFERRED_VERSION_linux-imx_mx6 = "3.10.17"
SRC_URI_append_toolchain-clang = " file://0004-Remove-clang-unsupported-compiler-flags.patch "
EXTRA_OECONF_append_arm = " --enable-fpm=arm"
这个怎么样?我知道这样添加是单选一个包,但是怎么操作呢?
LICENSE_FLAGS_WHITELIST_append = " commerical_packagename"
有人还提到了一些对他们有用的奇怪的东西:
IMAGE_INSTALL_append_machine1 += " package1"
文档很好地涵盖了这一点:https://www.yoctoproject.org/docs/latest/bitbake-user-manual/bitbake-user-manual.html#basic-syntax
较长的版本是 _ 引入了覆盖,这是一种表达 "do something special" 而不仅仅是分配的方式。
有些是append、prepend等操作。 富 = “1” FOO_append = "2"
FOO 现在是“12”,因为 2 附加到 1。
(_prepend 符合您的预期)
_remove 可用于从以空格分隔的列表中删除项目。
FOO = "1 2 3"
FOO_remove = "2"
FOO 现在是“1 3”。
pn_[foo]是对特定配方名称的覆盖(历史命名,是包名,但实际上是指配方)。所以你的 local.conf 可以做:
EXTRA_OEMAKE_pn-foo = "bar"
您刚刚为 foo 配方设置了 EXTRA_OEMAKE,而且只是 foo 配方。
还有其他覆盖。这些架构都有覆盖,因此 _arm _x86 _mips 等指定分配特定于这些架构。