libopenssl安装
tar xzvf openssl-1.0.1d.tar.gz
cd openssl-1.0.1d/
./config shared no-asm --prefix=$PWD/tmp
修改Makefile:
CC= arm-linux-gcc
AR= arm-linux-ar $(ARFLAGS) r
RANLIB= arm-linux-ranlib
NM= arm-linux-nm
MAKEDEPPROG= arm-linux-gcc
make
make install
将编译生成的头文件和动态库拷贝到交叉编译工具链中:
sudo cp -rf openssl/ /opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root/usr/include
sudo cp -drf * /opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root/usr/lib
将编译生成的动态库拷贝一份到根文件系统中:
cp -d *so* /mnt/rootfs/lib/
编译wpa-supplicant
tar zxvf wpa_supplicant-2.0.tar.gz
cd wpa_supplicant-2.0/wpa_supplicant/
cp defconfig .config
修改.config加上一行:
CONFIG_LIBNL32=y
修改Makefile:
ifndef CC
CC=gcc
endif
为
CC=arm-linux-gcc
make
make DESTDIR=$PWD/tmp install
cd ./tmp/usr/local/sbin
复制可执行程序到根文件系统
cp * /mnt/rootfs/bin
创建进程交互文件目录:
mkdir -p /var/run/wpa_supplicant
创建秘钥配置文件:
vi /etc/wifi_pswd.conf
文件内容:
ctrl_interface=/var/run/wpa_supplicant
/* 开放式网络 */
network={
ssid="dswei"
key_mgmt=NONE
}
/* WEP */
network={
ssid="dswei"
key_mgmt=NONE
wep_key0="baiwenwang123"
wep_tx_keyidx=0
}
/* WPA/WPA2 */
network={
ssid="dswei"
psk="baiwenwang123"
}
wpa-supplicant使用方法:
wpa_supplicant -B -c/etc/wifi_pswd.conf -iwlan0/*启动wifi并且自动连接可用热点*/
之后就可以通过wpa_cli命令进行状态查询
status /*查看当前连接状态*/
scan /*启动一次wifi热点扫描*/
scan_result /*显示上一次扫描的结果*/
add_network /* 添加网络,返回一个编号 */
set_network /* 设置网络的加密形式和ssid,秘钥 */
select_network /* 使能网络,并且禁用其他网络 */
save_config /* 保存配置 */
连接外网
需要连接外网,需要先配置好DNS、无线网卡的ip和网关(如果使用到了DHCP,那么这一步就可以省去):
①创建DNS服务器配置文件:
vi /etc/resolv.conf
文件内容:
nameserver 192.168.31.1
nameserver 192.168.1.1
nameserver 127.0.0.1
②配置无线网卡IP
ifconfig wlan0 192.168.31.55
③路由表修改:
route -n /*查看当前路由表*/
route add default gw 192.168.31.1 dev wlan0/*为网卡添加默认网关*/
ping www.baidu.com