Linux kernel libgpiod配方需要一个内核头:linux/gpio.h

Linux kernel libgpiod配方需要一个内核头:linux/gpio.h,linux-kernel,yocto,gpio,bitbake,openembedded,Linux Kernel,Yocto,Gpio,Bitbake,Openembedded,我正在尝试使用Yocto/OpenEmbedded拉取这个libgpiod库,并在我的recipes支持下构建它: 当我咬食谱时,它抱怨缺少“内核”标题: configure: error: linux/gpio.h header not found (needed to build the library) 如何在配方中输入有关此标题的信息?有或应该有补丁吗?无论我读到什么,libgpiod似乎都是用户空间应用程序/工具。为什么它要尝试获取内核头 我正在使用4.19.0+内核和Angstr

我正在尝试使用Yocto/OpenEmbedded拉取这个libgpiod库,并在我的recipes支持下构建它:

当我咬食谱时,它抱怨缺少“内核”标题:

configure: error: linux/gpio.h header not found (needed to build the library)
如何在配方中输入有关此标题的信息?有或应该有补丁吗?无论我读到什么,libgpiod似乎都是用户空间应用程序/工具。为什么它要尝试获取内核头


我正在使用4.19.0+内核和Angstrom发行版。谢谢。

我们正在使用Poky和Yocto Thud、勇士和宙斯。将libgpiod添加到我们的映像会引入所需的任何构建依赖项,构建libgpiod库和工具,将库和工具安装到目标映像,并将库和头安装到sdk

你用的是哪个Yocto?如何提取libgpiod库


我们使用:IMAGE\u INSTALL\u append=libgpiod,它从“poky”中获取配方。

内核头提供了一个用户空间应用程序可以使用的界面。或者您认为应用程序如何知道如何与内核对话?请理解这一点。但我的问题是:如何将这些信息传达给下载的配方?它是由某个bitbake变量控制的吗?我从recipes support获得了一堆其他食谱,但从来没有自定义过。我相信这就是这些“支持”食谱背后的想法。谢谢费里的回复。我对Yocto的事还不太熟悉。我们正在使用Yocto,但不确定是哪一个。你能告诉我如何/在哪里可以找到Thud、Warrior或Zeus的信息吗?我只是把.inc和.bb文件放在我们的recipes存储库中的/recipes支持下,我们的构建过程会选择/下载代码。我们正在使用一个make文件来调用下载poky的安装脚本。但一般文件在这里:。我不确定这是否适用于您,因为您正在使用Angstrom—我认为它是一个二进制发行版?对我来说,有效的方法是添加libgpiod工具。完整的行是:IMAGE\u INSTALL\u append=libgpiod libgpiod tools。否则,如果只指定libgpiod,则只会安装共享库,而不会安装命令行工具?这不是首选的方法。我们的想法是像安装脚本那样下载/签出完整的层,然后可以自动解决任何依赖关系。在您自己的层中,您将只添加您自己的配方或附加到现有配方。