Linux编译Ralink无线网卡驱动

Myth丶恋晨 2021-07-27 02:25 862阅读 0赞

0x00 自行下载网卡驱动,一般购买无线网卡会附赠驱动。

0x01 修改config.mk文件,一般在os/linux/config.mk下。

  1. 将“HAS_WPA_SUPPLICANT=n”改为“HAS_WPA_SUPPLICANT=y”;
  2. HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n”改为“HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y”。

0x02 终端切换进入解压目录,执行编译命令:sudo make,编译出现错误,

  1. 解决方法一:将 os/linux/rt_linux.c文件的pOSFSInfo->fsuid= current_fsuid();和pOSFSInfo->fsgid=current_fsgid(); 用#号注释掉即可。
  2. 解决方法二:强制类型转换。
  3. 将“pOSFSInfo->fsuid= current_fsuid(); ”改为“pOSFSInfo->fsuid= *(int *)¤t_fsuid();
  4. 将“pOSFSInfo->fsgid=current_fsgid(); ”改为“pOSFSInfo->fsgid= *(int *)¤t_fsgid();

0x03 如果报错是这样的话;

  1. sta_cfg.c:5766:85: error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]
  2. snprintf(extra, size, "Driver version-%s, %s %s\n", STA_DRIVER_VERSION, __DATE__, __TIME__ );
  3. ^
  4. sta/sta_cfg.c:5766:95: error: macro "__TIME__" might prevent reproducible builds [-Werror=date-time]
  5. snprintf(extra, size, "Driver version-%s, %s %s\n", STA_DRIVER_VERSION, __DATE__, __TIME__ );

这个错误是因为编译选项开启了-Werror,这样可以解决。

  1. 修改/lib/modules/`uname -r`/build/Makefile
  2. #gedit /lib/modules/`uname -r`/build/Makefile
  3. 查找-Werror 用#号注释或者删掉下面4段文本
  4. <span style="display: none; width: 0px; height: 0px;" id="transmark"></span>-Werror-implicit-function-declaration
  5. ,-Werror=implicit-int
  6. ,-Werror=strict-prototypes
  7. ,-Werror=date-time

0x04 编译安装

  1. sudo make
  2. sudo make install

0x05 禁用系统自带驱动

  1. /etc/modprobe.d/blacklist.conf

在里面写入需要禁用的驱动。如:

  1. sudo echo "blacklist rt2800usb">>/etc/modprobe.d/blacklist.conf

0x06 重启

  1. reboot

发表评论

表情:
评论列表 (有 0 条评论,862人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Linux无线网卡配置

    线网卡的自动配置可以使用netcfg2软件,具体内容请参考[ArchLinux Wiki Netcfg][]. 本文主要是针对手动配置,便于理解无线网卡的正常工作的过程...