热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Fedora16下编译安装无线网卡驱动

大学里不知有多少开源爱好者,在为不同版本的Linux驱动而头疼。特别是像我这里用校园网的情况,有线上网必须要安装“星空极速”这个垃圾软件拨号才能上网。想用无线,用的Fedora又不像Ubuntu那样有默认无线网卡驱动,所以还要自己下载编译安装。本以为下载,编译一下不就行了?可真正做的时候还真没那么容易。鉴于今晚终于将数星期努力付诸实践并取得成功,个人把安装过程记录一下。一来帮住遇到同

大学里不知有多少开源爱好者,在为不同版本的Linux驱动而头疼。特别是像我这里用校园网的情况,有线上网必须要安

装“星空极速”这个垃圾软件拨号才能上网。想用无线,用的Fedora又不像Ubuntu那样有默认无线网卡驱动,所以还要自己下载编

译安装。本以为下载,编译一下不就行了?可真正做的时候还真没那么容易。鉴于今晚终于将数星期努力付诸实践并取得成功,个

人把安装过程记录一下。一来帮住遇到同样情况的小白们,发扬开源社区精神。二来抒发一下终于能在linux里上网的激动心情。。

(高手莫喷阿。。。。)。

OK,废话完毕,进入正题。

首先说明,我的无线网卡是Broadcom Corporation BCM4313 ,系统是DVD版本Linux fedora 16 3.1.0-7.fc16.i686.PAE完全

安装版。(这里建议最好安装完全版,因为编译环境需要GCC,kernel-headers,kernel-devel.  PAE版本的还需要kernel-PAE-

devel。如果安装的是桌面版的或者没有选择安装这些,就需要先手动安装,相当麻烦的)。

命令行下安装驱动应该知道基本的复制,解压,文本编辑命令。(你要是还不知道这些,就请先看看基础命令再来联网吧!)

一:确认无线网卡   [....]# lspci -vnn|grep 14e4 

03:00.0 Network controller [0280]: Broadcom Corporation BCM4313 802.11b/g LP-PHY [14e4:4727] (rev 01)

                                                这是我的无线网卡信息

二:安装编译环境           [....]# yum  install kernel-headers kernel-devel gcc

这里要提一下,可能会遇到很尴尬的问题:yum安装是需要联网的,而我们正在做的事就是想让系统连上网。所以我前面说最好安装完全版的系统,这样编译环境就已经配置好了。再说作为练习机,最好是安装所有的软件。

三:下载驱动,解压到  /usr/local/src/

我的驱动压缩包是从这里下载的http://www.broadcom.com/support/802.11/linux_sta.php 

四:编译         进入解压后的目录   ["这里是解压后的目录"]# make

这里应该会出现错误如下

KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: 进入目录“/usr/src/kernels/3.1.0-7fc16.i686.PAE”
  LD      /usr/local/src/hybrid-wl/built-in.o
  CC [M]  /usr/local/src/hybrid-wl/src/shared/linux_osl.o
  CC [M]  /usr/local/src/hybrid-wl/src/wl/sys/wl_linux.o
/usr/local/src/hybrid-wl/src/wl/sys/wl_linux.c: 在函数‘wl_attach’中:
/usr/local/src/hybrid-wl/src/wl/sys/wl_linux.c:485:3: 错误:隐式声明函数‘init_MUTEX’ [-Werror=implicit-function-declaration]
cc1:有些警告被当作是错误


make[2]: *** [/usr/local/src/hybrid-wl/src/wl/sys/wl_linux.o] 错误 1
make[1]: *** [_module_/usr/local/src/hybrid-wl] 错误 2
make[1]: 离开目录“/usr/src/kernels/3.1.0-7fc16.i686.PAE”
make: *** [all] 错误 2

解决方法为:[....]# vi /src/wl/sys/wl_linux.c

进入文本编辑,找到init_MUTEX(&wl->sem).....................这个,需要慢慢找,耐心。。。。

   改为sema_init(&wl->sem,1)

  并在下一行加上 :

#ifndef init_MUTEX
sema_init(&wl->sem,1);
#else
init_MUTEX(&wl->sem);
#endif...............................................................加的这段,有点编程基础的应该明白吧。

保存退出。重新编译。

                   这样弄完,编译应该没问题了。要是还有问题,那估计是上面那个字符打错了,注意细节!!!


五:后续工作        进入目录    # insmod wl.ko

应该会出现"error insort 'wl.ko'............."这样的错误。

解决方法:目录  # cp wl.ko /lib/modules/3.1.0-7.fc16.i686.PAE/kernel/net/wireless/

之后重复  insmod wl.ko

然后 #depmod -a

#modprobe wl

重启

#echo modprobe wl>>/etc/rc.local


之后。。。。。。。。。。。。。。惊喜!!!!!!!!!!


后记:Fedora 15与16有继承关系,在15中应该也行、、、、、、、


推荐阅读
  • STM32与FPGA的对比及学习建议
    本文对比了野火STM32F103指南针板和Xilinx的PYNQ-Z2板(ZYNQ-7020),介绍了野火STM32F103指南针板的学习资料和讲解视频的详细程度,建议初学者学习野火的资料。同时,介绍了STM32开发所用的Keil程序和C指针的重要性。对于ZYNQ-7020的开发,提到了其自带的Linux、Ubuntu18.4系统以及使用SD卡烧入镜像的方法。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • PHPMailer邮件类邮件发送功能的使用教学及注意事项
    本文介绍了使用国外开源码PHPMailer邮件类实现邮件发送功能的简单教学,同时提供了一些注意事项。文章涵盖了字符集设置、发送HTML格式邮件、群发邮件以及避免类的重定义等方面的内容。此外,还提供了一些与PHP相关的资源和服务,如传奇手游游戏源码下载、vscode字体调整、数据恢复、Ubuntu实验环境搭建、北京爬虫市场、进阶PHP和SEO人员需注意的内容。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 本文介绍了在Docker容器技术中限制容器对CPU的使用的方法,包括使用-c参数设置容器的内存限额,以及通过设置工作线程数量来充分利用CPU资源。同时,还介绍了容器权重分配的情况,以及如何通过top命令查看容器在CPU资源紧张情况下的使用情况。 ... [详细]
  • 本文讨论了在Linux系统中,使用chown命令将django项目目录下的static目录的拥有者从root改为eureka的问题。作者尝试了多种命令,包括chown和sudo chown等,但都没有成功修改拥有者。文章提供了相关目录的权限信息,并补充了项目所在磁盘和操作系统的信息。 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • 本文介绍了在Ubuntu下制作deb安装包及离线安装包的方法,通过备份/var/cache/apt/archives文件夹中的安装包,并建立包列表及依赖信息文件,添加本地源,更新源列表,可以在没有网络的情况下更新系统。同时提供了命令示例和资源下载链接。 ... [详细]
  • 本文介绍了在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一,尤其是在大规模系统中,数据库集群已经成为必备的配置之一。文章详细介绍了主从数据库架构的好处和实验环境的搭建方法,包括主数据库的配置文件修改和设置需要同步的数据库等内容。MySQL的主从复制功能在国内外大型网站架构体系中被广泛采用,本文总结了作者在实际的Web项目中的实践经验。 ... [详细]
  • PHP函数实现分页含文本分页和数字分页【PHP】
    后端开发|php教程PHP,分页后端开发-php教程最近,在项目中要用到分页。分页功能是经常使用的一个功能,所以,对其以函数形式进行了封装。影视网源码带充值系统,vscode配置根 ... [详细]
  • 本文介绍了在Ubuntu系统中清理残余配置文件和无用内容的方法,包括清理残余配置文件、清理下载缓存包、清理不再需要的包、清理无用的语言文件和清理无用的翻译内容。通过这些清理操作可以节省硬盘空间,提高系统的运行效率。 ... [详细]
author-avatar
syingjin
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有