Chinaunix首页 | 论坛 | 博客
  • 博客访问: 271472
  • 博文数量: 42
  • 博客积分: 485
  • 博客等级: 下士
  • 技术积分: 482
  • 用 户 组: 普通用户
  • 注册时间: 2011-05-26 19:33
文章分类
文章存档

2017年(1)

2016年(4)

2015年(8)

2014年(3)

2013年(4)

2012年(3)

2011年(19)

我的朋友

分类: LINUX

2013-04-19 17:55:44

本次移植主要是按照monopoly的博客http://blog.chinaunix.net/uid/7406469.html所述内容进行的,在此非常感谢博主monopoly。
这里主要是针对移植过程中遇到的具体问题作记录。
主要步骤:
a.下载官方驱动包,编译生成驱动模块;放了目标板加载;
b.下载openssl-1.0.0d,编译生成libssl.so和libcrypto.so放入目标板;
c.下载wpa_supplicant,编译生成wpa_supplicant可执行文件放入目标板;
d.如果需要做wifi的基本测试,则下载wireless_tools(主要有iwconfig,iwlist等管理工具)进行编译;
e.具体按<测试步骤>进行测试。
问题:
1.编译驱动时,将include/iface/rtmp_usb.h中的RXBULKAGGRE_SIZE,从12改为8。
2.编译内核时,需要做DHCP的支持,wireless的支持,PF_PACKET的支持:
DHCP:
-*- Networking support 
   Networking options  --->
        [*]   IP: kernel level autoconfiguration
             [*]     IP: DHCP support

wireless:

    Networking supportà

       Wirelessà

              -*-Wireless extensions

              [*]Wireless extensions sysfs files

    Device Driversà

       Network device supportà

              Wierless LANà

                     [*]Wireless LAN(IEEE 802.11)

                     Ralink driver support



PF_PACKET:
    -*- Networking support 
       Networking options  --->
            <*> Packet socket

3.编译openssl时默认的是编译出静态库.a文件的,为了编译出.so,对于下载到的openssl包后,用"./Configure no-asm shared linux-elf-arm  --prefix=/usr/local/arm/openssl"目录生成新的Makefile,修改Makefile中的CC,AR,RANLIB为相应编译环境。还有一点很重要,找到makefile中"pentium"相关的设置全删掉。编译完的.so可以/usr/local/arm/openssl目录下找到。

4.一定要注意,如果目标板中没有openssl的相关库,wpa_supplicant运行不会报错!
   openssl用新的编译工具重新编译后,wpa_supplicant一定也要重新编译,否则现成的wpa_supplicant运行不会出错,但实际上会有问题!

5.wap_supplicant工具运行时,驱动要指定“-D wext”,而非"-D ralink",否则将找不到ralink驱动出错。

测试步骤:
1.将驱动源码中的文件"RT2870STA.dat"拷到目标板的"/etc/Wireless/RT2870STA/"目录下;
2.将驱动模块“rt3070sta.ko”拷到目标板应用目录下;
3.将"./wireless/"目录下的"libiw.so.29"拷到目标板的目录"/usr/lib/"下;将"./wireless/"目录下的其它可执行程序 拷到目标板的"/usr/bin"下;
4.将"libcrypto.so.1.0.0"和"libssl.so.1.0.0"两个文件拷到目标板的"/usr/lib"下;
5.将"wpa_supplicant"拷到目标板的"/usr/bin"目录下;
6.将"wpa_supplicant.conf"和"udhcpd.conf"两个文件拷到目标板的"/etc"目录下;
7.插上usb-wifi设备后,执行以下命令:
insmod rt3070sta.ko
ifconfig ra0 up
wpa_supplicant -D wext -B -ira0 -c /etc/wpa_supplicant.conf  (注意修改这个配置文件.conf里面的ssid和psk)
udhcpc -b -i ra0 -s /etc/udhcpd.conf -p /var/ru/udhcpc.pid &
如果成功,可进行ping路由器了。
ps:
iwlist ra0 scan可列出所有AP;
iwconfig ra0 可察看ra0所接AP的具体情况。
阅读(4039) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~