您的位置:首页 > 运维架构 > Linux

linux下编译wpa_supplicant

2010-06-09 15:58 274 查看
前一段时间只在vs2005下编译成功过。经过近一段时间的琢磨,今天终于在linux下成功编译了wpa_supplicant。 挺简单的事情折腾了这么久。没办法,刚开始进入linux。。

和同样的初学者分享一下我的经验 ^_^

环境:vmware+ubuntu, wpa_supplicant-0.6.10+ openssl-0.9.8d
由于编译wpa_supplicant需要用到openssl的头文件和lib,所以需要先编译安装openssl
1. 编译安装openssl
1.1 ./config
1.2 make
碰到问题:NUMPRIMES没有定义
原因:bn_prime.h 内容为空
解决办法:进入crypto/bn目录运行:perl crypto/bn/bn_prime.pl >bn_prime.h
1.3 安装openssl ;make install
安装后可以生成一些目录,在编译wpa_supplicant的时候会用到。如下:
/usr/local/ssl/include
/usr/local/ssl/lib
2. 编译wpa_supplicant
2.1 创建配置文件,这里创建默认的配置文件:
cp defconfig .config
2.2 编译,命令很简单,进入wpa_supplicant目录后执行make。
会出现一堆错误说找不到一系列东西。
解决办法:在.config文件中找到# Uncomment following two lines and fix the paths if you have installed OpenSS的一段。添加如下内容:
CFLAGS += -I/usr/local/ssl/include
LIBS += -L/usr/local/ssl/lib
重新make,发现wpa_supplicant的二进制文件编译出来了。但是还是有错误。编译wpa_passphrase出错。(默认make会编译出三个二进制文件,分别是wpa_supplicant,wpa_passphrase和wpa_cli)
解决办法:继续在上面提到的地方添加:
LIBS_p += -L/usr/local/ssl/lib
重新编译。 OK,编译通过,在wpa_supplicant-0.6.10/wpa_supplicant目录下可以看到编译出的三个二进制文件。

2010-06-09
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: