Yocto 中的 IMAGE_FEATURES 与 IMAGE_INSTALL

md.*_*mal 4 linux embedded-linux bitbake yocto

Yocto 中的 IMAGE_INSTALL 和 IMAGE_FEATURES 有什么区别。

我已经看到在 Yocto 中启用启动画面。我们需要将以下内容写入local.conf

IMAGE_FEATURES += "splash"
Run Code Online (Sandbox Code Playgroud)

为什么我不能在这里使用 IMAGE_INSTALL

IMAGE_INSTALL += "splash"
Run Code Online (Sandbox Code Playgroud)

谁能告诉我什么时候应该使用 IMAGE_FEATURES 和 IMAGE_INSTALL?

dan*_*lor 7

您可以将IMAGE_FEATURES(and EXTRA_IMAGE_FEATURES) 视为包含“开关”列表(从预定义的功能列表中选择的功能,取决于目标图像的基类)列表的变量,它告诉构建系统自动附加一组给定的包,和/或不同的包配置,到IMAGE_INSTALL变量。Recipes 可以检查(并附加)此变量中的特定功能,以便相应地更改其默认配置/构建过程。

因此,加入“”到IMAGE_FEATURES你告诉构建系统添加“ psplash ”包(默认情况下,您可以选择其他包通过修改提供此功能SPLASH变量)IMAGE_INSTALL通过FEATURE_PACKAGES_splash = ${SPLASH}的声明poky/meta/classes/image.bbclass

但是,您可以直接添加“ psplash ”,IMAGE_INSTALL但很可能与“ splash ”功能相关的一些附加包配置错误,因为他们不会注意到它(也许,在这种情况下这不是什么大问题。 ..但它肯定会导致其他人出现问题)。这就是为什么你不能(不应该)简单地添加“ splash ”到IMAGE_INSTALL(除了没有名为“ splash ”的pacakge的事实);该IMAGE_INSTALL变量只保留要安装在目标映像中的软件包列表。

有关详细信息,请参阅手册