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