C

使用自定义元层

您可能想添加到 Boot to Qt 软件栈的自定义设置应始终在单独的层中完成,而不是直接在 Boot to Qt 层(meta-boot2qt)中。这是与 Yocto 层一起工作的首选方式,并允许您将所有更改都保存在单独的版本控制中,同时更新其他层而不用担心冲突或丢失您的更改。

要创建一个全新的空白层,可以使用 bitbake-layers 命令,然后将层添加到您的构建环境中,如下所示

bitbake-layers create-layer ../sources/meta-my-custom-boot2qt
bitbake-layers add-layer ../sources/meta-my-custom-boot2qt

在此层中,您现在可以包含任何配置更改或您想要更改的任何新配方。更改通常在 .bbappend 文件 中完成,允许您修改如何构建软件组件。

示例:在 Boot to Qt 镜像中启用 Web 服务器

当您想启用 Boot to Qt 软件栈中的 Web 服务器时,有几种选项,因为例如 Yocto 支持以下服务器: Apache2CherokeeHiawathaMonkeyNGINXNostromolighttpd.

大多数配方都可在 meta-openembedded/meta-webserver 层中找到。您需要将层单独添加到 conf/bblayers.conf 文件中,才能使其在构建中可用。然而,lighttpd 配方已经在默认构建配置中可用。

将新的软件组件包含到 Boot to Qt 软件栈中有几种不同 ways. 最简单的方法是在不使用单独的定制层的情况下,使用您的构建环境中的 conf/local.conf 文件完成

IMAGE_INSTALL += "lighttpd"

要使用定制层,您可以为处理 Boot to Qt 软件栈中额外软件组件安装的 packagegroup 配方创建一个新的 .bbappend 文件。在 ../sources/meta-my-custom-boot2qt/recipes-core/packagegroups/packagegroup-b2qt-embedded-base.bbappend 中添加

RDEPENDS_${PN} += "lighttpd"

重新构建镜像后,Web 服务器在默认端口 80 上运行,并从 /www/pages/ 服务器根目录提供服务。

在某些 Qt 许可下可用。
了解更多信息。