You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何正确安装自定义内核的头文件与源码以编译树外模块?

自定义内核下树外模块编译的头文件配置方案
  • 确保内核源码配置与当前运行内核一致

    • 若内核源码目录无.config,从/boot/config-$(uname -r)复制到源码目录并命名为.config
    • 执行make olddefconfig确认配置匹配,也可通过make menuconfig手动调整
  • 安装内核头文件到系统标准路径

    • 切换到内核源码目录,执行:
      make headers_install INSTALL_HDR_PATH=/usr
      

    该命令会将模块编译所需头文件部署到/usr/include下的对应子目录,覆盖系统默认头文件(自定义内核场景下必须执行)

  • 建立内核源码的符号链接
    树外模块编译时会依赖/lib/modules/$(uname -r)/build路径指向内核源码:

    • 检查现有链接:ls -l /lib/modules/$(uname -r)/build
    • 若链接不存在或指向错误,创建正确链接:
      ln -s /实际的内核源码目录路径 /lib/modules/$(uname -r)/build
      
    • 可选:同步创建source链接,兼容部分模块编译脚本:
      ln -s /实际的内核源码目录路径 /lib/modules/$(uname -r)/source
      
  • 验证编译可行性
    进入树外模块目录,执行标准模块编译命令测试:

    make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
    

    若报错,优先排查:

    • 内核配置是否开启CONFIG_MODULES=y
    • 内核源码是否完成基础编译(至少执行过make)
    • 头文件是否存在缺失

内容的提问来源于stack exchange,提问作者eem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 15:04:52