如何将自己的库包含到 Yocto 生成的嵌入式 Linux 的工具链 (SDK) 中?

How to include a own libary into the toolchain(SDK) for an embeeded Linux generated by Yocto?

我正在寻找一个示例,其中展示了如何将自己的库包含到工具链中。

我们给图书馆打电话"myLib"。为此,我创建了一个食谱 "myLib.bb" 并添加了:

BBCLASSEXTEND = "native nativesdk"

在我的 "local.conf" 我添加了:

IMAGE_INSTALL_append = " myLib"

通过以下方式构建 SDK 时:

$ bitbake myTarget -c populate_sdk

它生成一个 SDK 安装程序和两个清单文件。 "myLib" 仅包含在目标清单中,不包含在主机中。如何在主机系统上包含 myLib?


这个想法是,其他人可以在没有 Yocto 系统的情况下在他的系统上构建软件。只有使用工具链,他才能生成二进制文件,可以在评估板上传输和执行。

只要您的库 myLib 安装到图像中,它就应该是您生成的 SDK 的一部分。你也说它是,至少作为目标清单的一部分。

确保为您的库安装了所需的头文件,然后您应该能够针对您的库进行交叉编译。

您需要在开发人员构建机器上使用 myLib 吗?否则,为什么要将它添加到 nativeskd 部分? (即主机清单)。这适用于需要在主机上 运行 的应用程序,即交叉编译器、代码生成器等