跳转到内容

Linux 6.12 与 25.12 工具链:为什么内核模块必须对得上

Linux 6.6 → 6.12,GCC 13.3 → 14.3,内核模块必须对得上。

25.12 把所有平台从 Linux 6.6 升到 6.12,并更新了工具链;为 24.10 编译的内核模块,在 25.12 上加载不了。

组件 24.10.0 25.12.0
Linux 内核 6.6.73 6.12.71
GCC 13.3.0 14.3.0
binutils 2.42 2.44
musl 1.2.5 1.2.5
glibc 2.38 2.41

25.12.6 把内核更新到 6.12.112。25.12.0 的无线协议栈(cfg80211/mac80211)来自内核 6.18.7,同时带有 dnsmasq 2.91、dropbear 2025.89、busybox 1.37.0。

  • kmod-* 软件包只针对一个确定的内核编译。软件源路径里带着内核 hash,例如 targets/<target>/kmods/<kernel-hash>/,必须和正在运行的内核一致。
  • 来自其他版本、其他构建或 hash 不同的镜像站的 kmod,会装不上或加载失败。“插件装不上”很多就是这个原因。
  • 第三方固件常常自带不同的内核,官方 kmod 可能完全不适用。
终端窗口
uname -r
grep -E 'RELEASE|TARGET' /etc/openwrt_release

来源

Router.Homes

独立的 OpenWrt 实操笔记。每页写明固件、设备、包管理器与恢复路径。

图标:Solar by 480 Design, CC BY 4.0