使用 openssl 构建根工具链



我正在使用Buildroot(2017.02.5(来构建自定义交叉编译工具链。我有两个构建根配置;一个用于构建 RFS,另一个纯粹用于构建工具链。我以这种方式配置东西,因为我不希望重建工具链,除非我有意重建它 - 构建 RFS 的配置将此工具链引用为外部工具链。

一般来说,构建的工具链工作正常,但我有一些现有的应用程序(Linux用户空间(,#include<openssl/md5.h>。当我尝试编译它时,我收到一个"<openssl/md5.h>: No such file or directory"错误,这是意料之中的,因为生成的工具链的 sysroot dir 不包含 openssl 目录。

如何让构建根在工具链中包含openssl?我所做的所有搜索似乎都指向为我的嵌入式目标交叉编译openssl,这不是问题。问题是我需要将其包含在工具链中。

我将目标包 --> 库 --> 加密 --> openssl 设置为 y,但我认为这在这种情况下没有任何区别,因为我相信它只与 RFS 有关(并且有问题的 defconfig 不构建 RFS,只构建工具链(。

我可以在buildroot树之外编译OpenSSL并将其安装到sysroot目录中,但这似乎不正确,因为它会污染sysroot。

我确定我在这里错过了一些简单的东西 - 任何帮助将不胜感激。

在进一步阅读了buildroot文档(这非常好(之后,我认为在Target packages下选择的包实际上确实被推入工具链的sysroot(或至少应该(这是有意义的。这似乎不起作用的原因是因为我正在做一个make toolchain而不是make all(或者只是一个简单的make(。这些包不是用前者构建的,所以它们不在工具链的sysroot

最新更新