3

恐怕我的问题有点复杂。感谢任何可以提供帮助的人。

一些背景:

我有一个编译内核模块和用户空间应用程序的第 3 方软件包。不幸的是,这个第 3 方非常复杂,并且不使用 Kbuild 来构建内核模块(我尝试过但没有成功)

在编译内核模块时,我添加了 -I{path to kernel headers},但我看到编译中没有解析 .config 文件,这当然会导致很多错误。我尝试在命令行中手动将 .config 中的所有标志添加到 gcc(使用脚本生成命令行),但这是一条非常长的行,gcc 无法处理它。

所以我的问题是:有没有办法以某种方式强制所有这些标志到 gcc ?

欣赏你的想法:)

澄清:
第 3 方 SW 可以在较旧的内核(2.6、2.4)上编译我正在尝试为 3.2 编译它也许如果有人可以解释原始内核 Makefile 如何管理 .config 文件,我可以模仿这种行为。

4

1 回答 1

3

在挖掘内核源代码后,我找到了答案。这是以防有人需要它。有一个名为 autoconf.h 的自动生成的 h 文件,其中包含 C 预处理器格式的所有相关定义。只需要在编译模块时手动包含它。

同样在理论上,我可以使用我的脚本来创建这样的文件并从源代码中包含它。

希望这可以帮助某人。现在转到下一个问题:)

于 2013-09-18T22:46:49.917 回答