C: 如何在编译内核模块时手动添加依赖

标签 c linux module dependencies kernel

我正在开发具有特定 I2C 平台驱动程序的嵌入式 Linux 系统,并且正在编写自定义 I2C 驱动程序。一切正常,但我对它们的依赖性有疑问。

由于我的自定义驱动程序使用默认的 I2C 函数,一旦我编译它,make 命令会自动更新 modules.dep 文件,说明我的驱动程序依赖于 i2c-core 运行,但这还不够。为了配置i2c-core,我需要先加载i2c-omap(平台的驱动程序),然后我的驱动程序才能正常工作。

不幸的是,我找不到任何可以调用的伪函数,因此在 make 生成我的驱动程序时欺骗它添加另一个依赖项。另外,我更喜欢一个自动化的解决方案,而不是用 sed -i 's/RE1/RE2/' modules.dep 之类的东西修改 modules.dep

那么,有什么方法可以在编译时显式地添加对模块的依赖?

谢谢!

最佳答案

我在这里找到了答案:http://www.xml.com/ldd/chapter/book/ch11.html

我打电话解决了我的问题

request_module("i2c-omap"); 

无论如何,这并没有完全像我最初预期的那样更新依赖文件。如果有人知道这样做的方法,请在此处添加评论!

关于C: 如何在编译内核模块时手动添加依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24686381/

相关文章:

angularjs - Angular.js 从多个模块配置 ui-router 子状态

c - fwrite 和 fgets 处理它时遇到问题

c - qsort,比较中间值,为什么不能相等?

php - 我如何在 URL 中实现 escapeshellarg?

php - 如何在从 bitnami 安装的 linux 上查找 wordpress 文件

javascript - 如何确保 typescript 模块符合接口(interface)

ruby - Ruby 中的 "include module"和 "extend module"有什么区别?

C Programming::accept() 在压力测试中工作然后不工作

c - 从 C 程序中写入 ip 地址的最简单方法是什么?

c - Socket编程PF包套接字