当前位置:   article > 正文

kali linux手动编译网卡驱动(以mt7612u为例)_kail命令编译

kail命令编译

〇、linux常用命令

《Linux入门与基础》课程教案_小王小王指定辉煌的博客-CSDN博客_linux入门与基础教案

linux常用命令笔记(二)_小王小王指定辉煌的博客-CSDN博客

一、下载源码

查看系统版本号 

  1. uname -r
  2. uname -a
  3. cat /proc/version

或`/lib/modules/`下文件夹的名字(但是可能有多个)。

下载源码(旧版本链接如下): 

http://old.kali.org/kali/pool/main/l/linux/

二、安装源码

sudo dpkg -i <package_name.deb>

 安装的源码位置

/usr/src/

解压对应的package_name.tar.xz

  1. xz -d package_name.tar.xz
  2. tar -zxvf package_name.tar

 进入目录

  1. cd /usr/src/linux-source-5.10
  2. ls

 三、编译mt76文件夹驱动

进入目录,已有的驱动源码如下:

  1. cd drivers/net/wireless/
  2. cd mediatek/mt76

打开并编辑Makefile,末尾处添加:

vim Makefile
  1. # 末尾处 Add 如下:
  2. # 在Makefile的最后添加以下命令
  3. # 如果你是在运行平台上编译的,你可以直接用下面这一行,来动态的找到平台的Linux版本编译模块所需的目录
  4. # KERNEL_DIR = /lib/modules/`uname -r`/build
  5. KERNEL_DIR = /lib/modules/5.13.0-40-generic/build
  6. MODULEDIR := $(shell pwd)
  7. modules:
  8. make -C $(KERNEL_DIR) M=$(MODULEDIR) modules
  9. # 原文链接:https://blog.csdn.net/LITTENg/article/details/124617311

 无权限保存则先执行:

sudo chmod 777 *

 编译可能需要的包:(可选项)

apt-get install Autoconf

开始编译: 

sudo make

 如下:

 

 得到kernel object:

mt76.ko  mt76-usb.ko  mt76x02-lib.ko  mt76x02-usb.ko

 四、编译mt76x2

同样:

先 vim Makefile,

末尾添加内容,

再sudo make

编译过程如图:

五、若报include的错:

 这里用其他驱动举例:

1. 找到该缺失的文件位置,可能会在上一级目录,下一级目录,兄弟目录,兄弟include目录,libxx目录中。实在找不到,退到父文件夹,右键,在当前文件夹里搜索。

2. 根据报错信息提示路径,找到报错文件使用mousepad打开

3. 计算出要被include的文件关于出错文件libcxgb_cm.h的相对位置,并修改

         include<>里面一般是库文件,include ""是相对路径下的文件

         故修改前后如下:

 需要chmod再保存。

4. sudo make重现编译

(此错误估计和gcc有关,可能出现多处include错误,尚未寻找定义include<>位置的比较好的修改方法,目前是改源码的include,亲测可以解决。)

六:安装驱动

1. 直接安装目标驱动报错如下:

  1. sudo insmod *.ko
  2. sudo insmod mt76x2u.ko

 

原因是缺少依赖模块 

2. 查找依赖模块

 

3.依次查找依赖并安装,最终以正确顺序安装即可

  1. sudo modprobe mac80211
  2. sudo modprobe cfg80211
  3. sudo insmod mt76.ko
  1. cd mt76x2
  2. sudo insmod mt76x02-lib
  3. sudo insmod mt76x2-common
  4. sudo insmod mt76-usb
  5. sudo insmod mt76x02-usb
  6. sudo modprobe usbcore
  7. sudo insmod mt76x2u.ko

mac80211

cfg80211

mt76.ko

mt76x02-lib

mt76x2-common

mt76-usb

mt76x02-usb

usbcore

mt76x2u.ko

 

 

 成功!!!!!完结撒花!!!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/957769
推荐阅读
相关标签
  

闽ICP备14008679号