linux下编译wpa_supplicant 收藏

前一段时间只在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目录下可以看到编译出的三个二进制文件


linux下编译wpa_supplicant …的更多相关文章

  1. 在Ubuntu下编译wpa_supplicant

    最近在研究WiFi联盟的多屏互动协议Miracast,其中需要用到wpa_supplicant,编译中遇到了一些问题,经过一下午的折腾也都解决了,下面分享给各位. 一.编译需要用到三个库源码包,分别是 ...

  2. linux下编译gcc6.2.0

    linux下编译gcc6.2.0 在archlinx的下gcc已经更新到6.2.1了,win10的WSL下还是gcc4.8.官方源没有比较新的版本,于是自己编译使用. GCC6的几个新特性 GCC 6 ...

  3. LINUX下编译安装PHP各种报错大集合

    本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...

  4. linux下编译安装vim7.4并安装clang_complete插件

    linux下编译安装vim7.4并安装clang_complete插件 因为debian里软件仓库中下载安装的vim是不支持python写的插件的(可以打开vim,在命令模式先输入:py测试一下),导 ...

  5. linux下编译出现空间不足解决办法

    linux下编译出现空间不足解决办法 编译内核出现问题: AS      .tmp_kallsyms1.o .tmp_kallsyms1.S:2: fatal error: when writing ...

  6. linux下编译安装curl

    linux下编译安装curl 1.下载curl git clone https://github.com/curl/curl.git 2.在curl目录下生成configure文件 ./buldcon ...

  7. 如何在Kali Linux下编译Windows Exploit

    前言 微软的Windows在企业或是个人应用领域占据着最大的市场份额,在渗透测试过程中你会经常遇到很多Windows的工作站和服务器.另一方面,大多数渗透测试人员主要使用基于Linux的发行版渗透测试 ...

  8. 如何用javac 和java 编译运行整个Java工程 (转载)【转】在Linux下编译与执行Java程序

    如何用javac 和java 编译运行整个Java工程 (转载)  http://blog.csdn.net/huagong_adu/article/details/6929817 [转]在Linux ...

  9. linux下编译qt5.6.0静态库——configure配置

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

随机推荐

  1. SpringCloud教程 | 第十一篇: docker部署spring cloud项目

    版权声明:本文为博主原创文章,欢迎转载,转载请注明作者.原文超链接 ,博主地址:http://blog.csdn.net/forezp. http://blog.csdn.net/forezp/art ...

  2. canvas操作图片,进行面板画图,旋转等

    HTML5 <canvas> 标签用于绘制图像(通过脚本,通常是 JavaScript). 不过,<canvas> 元素本身并没有绘制能力(它仅仅是图形的容器) - 您必须使用 ...

  3. LeNet-5网络结构及训练参数计算

    经典神经网络诞生记: 1.LeNet,1998年 2.AlexNet,2012年 3.ZF-net,2013年 4.GoogleNet,2014年 5.VGG,2014年 6.ResNet,201 ...

  4. IOS Quartz 2D 学习(1)

    IOS提供两种创建图形的途径: 1.OpenGL. 2.Quartz.Core Animation.UIKit图形支持. UIKit的图形系统 1.视图绘画周期: DrawRect方法,在任何时候,当 ...

  5. [ArgumentException: 可能证书“CN=JRNet01-PC”没有能够进行密钥交换的私钥,或者进程可能没有访问私钥的权限。有关详细信息,请参见内部异常。]

    堆栈跟踪: [CryptographicException: 密钥集不存在. ] System.Security.Cryptography.Utils.CreateProvHandle(CspPara ...

  6. CODEVS4650 破损的键盘

    传送门 题目大意:一个字符串,将[]内的字符提前. 题解:链表,数组元素高效交换 cur表示目前元素插入下标为cur的元素后面. 所以,假设目前把下标为i的元素插到cur后面. 那么,next[i]= ...

  7. Ubantu中sublime汉化

    1 启动并进入sublime主界面: 2 如图所示,点击菜单栏中“preferences”,弹出选项中找到“package control”: 3 进入下一步,选择“install package”: ...

  8. Oracle配置文件tnsnames.ora新增链接后连接报错:ORA-12154: TNS:无法解析指定的标识符

    一个空格引发的血案:在tnsnames. ora文件中新加了一个配置,该配置估计当时是拷的别人的直接粘贴上去的,然后发现用pl/sql连接就一直报错了,后面排除了用户名和密码问题和后,仔细看了该文件才 ...

  9. ansible命令应用示例

                                  ansible命令应用示例                             ping slave组 ansible slave -m ...

  10. MySQL存储过程中的3种循环,存储过程的基本语法,ORACLE与MYSQL的存储过程/函数的使用区别,退出存储过程方法

    在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环.还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易引起程序的混乱,在这里就不错具体 ...