尝试为 vsnprintf 包含 header 会在编译时引发错误

Trying to include header for vsnprintf throws error in compiling

内核中 vsnprintf 的 header 文件是什么?任何人都可以告诉我这个,我有内核 5.14,我不确定我的系统上默认的 headers 是什么。我安装了许多不同的内核 header,它们是:

linux-headers-5.11.0-25
linux-headers-5.11.0-40
linux-headers-5.11.0-25-generic
linux-headers-5.11.0-40-generic
linux-headers-5.11.0-38
linux-headers-5.11.0-38-generic

哪个应该是默认值?但我想问一下函数 vsnprintf 的 header 文件是什么?

查看 Linux v5.11 的源代码,正确的 header 似乎是 linux/kernel.h。它与 Linux v5.14.

的文件相同

要检查当前 运行 内核应使用哪个 header,请使用命令 uname -r,它会告诉您正确的版本。然后,您可以使用这些和适当的 Makefile 进行编译:有关详细信息,请参阅 the documentation