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

树莓派4B配置ASUS AX56(RTL8852AU)无线适配器遇内核编译问题

解决树莓派4B编译RTL8852AU驱动的内核头文件问题

核心问题

你遇到的/lib/modules/6.1.21-v8+/build: No such file or directory错误,本质是缺少当前运行内核对应的内核头文件。树莓派的定制内核头文件包命名并非直接对应uname -r输出,因此直接用linux-headers-$(uname -r)找不到包。

可行解决方案

1. 安装树莓派官方内核头文件

执行以下命令安装适配当前内核的头文件(这是最可靠的方式):

sudo apt update && sudo apt full-upgrade -y
sudo apt install build-essential raspberrypi-kernel-headers
  • raspberrypi-kernel-headers会自动匹配你当前运行的树莓派定制内核版本,无需手动指定版本号。
  • 安装完成后,检查/lib/modules/$(uname -r)/build是否存在:
    ls /lib/modules/$(uname -r)/build
    

2. 重新编译驱动

回到RTL8852AU驱动目录,重新执行编译和安装:

cd ~/rtl8852au
make clean
make
sudo make install

3. 用DKMS自动管理驱动(推荐)

DKMS可以自动适配内核版本,避免每次内核更新后重新编译:

  1. 安装DKMS工具:
    sudo apt install dkms
    
  2. 向DKMS注册驱动:
    cd ~/rtl8852au
    sudo dkms add .
    
  3. 编译并安装驱动:
    sudo dkms build rtl8852au/1.0.6  # 版本号请查看驱动目录下Makefile中的定义
    sudo dkms install rtl8852au/1.0.6
    

4. 验证内核与头文件版本匹配

如果上述步骤无效,检查内核版本和已安装的头文件版本是否一致:

  • 查看当前运行内核:
    uname -r
    
  • 查看已安装的内核头文件:
    ls /usr/src/linux-headers-*
    

如果版本不匹配,重启系统确保内核更新生效:

sudo reboot

5. 手动修复build目录链接(可选)

如果/lib/modules/$(uname -r)/build仍不存在,手动创建软链接指向实际头文件目录:

sudo ln -s /usr/src/linux-headers-$(uname -r) /lib/modules/$(uname -r)/build

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 22:52:53