本文主要记录在linux平台下。交叉编译wifidog并在openwrt平台上执行的过程。主要是针对wifidog源代码被改动后。

不得不亲自进行交叉编译移植的时候,所碰到的一些问题。

(1)下载源代码

这个能够到wifidog官方下载。

(2)交叉编译环境

这个须要提前准备好。也不多说了

(3)解压。并进入代码文件夹

执行./autogen.sh

可能会报错:libtoolize: command not found

这个须要安装一下依赖的工具包:apt-get install libtool

(4)然后执行./configure

./configure –host=mips-openwrt-linux –prefix=$PWD/install

host參数指定的是目的平台,普通情况下。设定了host之后,makefile中的编译器会自己主动调整为host平台的编译器

prefix參数是指执行make install 之后。程序安装的路径。

安装在源代码文件夹的install文件夹内,是为了不污染主机的环境。

(5)然后把install文件夹中的文件,都复制到目的平台(我这里是openwrt)

可是临时是无法启动wifidog的。由于还没有配置文件。能够在源代码文件夹找到,复制到目标平台的 /etc/wifidog.conf

详细的配置,请自行google

(6)这里提一点,假设是能够直接安装wifiedog的,就直接在线安装吧,不要折腾。

我是不得不改动wifidog 的源代码,添加接口。才自行交叉编译的。

假设像我情况一样的话,建议先在线安装wifidog,然后交叉编译完之后把原来安装的wifidog替换掉就好了。

这样子能够省了一些写启动脚本之类的工作。

(7)当然。移植过程中还会遇到其他问题。比如

Reading configuration file ‘/home/mint/workspace/my-wifidog/wifidog-gateway/install/etc/wifidog.conf’

Could not open configuration file ‘/home/mint/workspace/my-wifidog/wifidog-gateway/install/etc/wifidog.conf’

这里报错是由于,默认把安装路径install以下的/etc作为默认配置文件的文件夹。须要在wifidog启动的时候指定一下。

在openwrt平台上。wifidog启动的脚本是/usr/bin/wifidog-init

在option那里添加一个 參数 ” -c /etc/wifidog.conf “

wifidog交叉编译的更多相关文章

  1. wifidog 移植到MIPS平台

    使用的是一款Broadcom的芯片,现在上面运行wifidog实现认证上网的功能.由于不是openwrt平台,所以就没了make menuconfig 勾选就能自动编译到版本中的.所以想使用交叉编译的 ...

  2. Linux主机上使用交叉编译移植u-boot到树莓派

    0环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS: Debian Jes ...

  3. Ubuntu 16.04 安装 arm-linux-gcc 嵌入式交叉编译环境 问题汇总

    闲扯: 实习了将近半年一直在做硬件以及底层的驱动,最近要找工作了发现了对linux普遍要求很高,而且工作岗位也非常多,所以最近一些时间在时不时地接触linux. 正文:(我一时兴起开始写博客,准备不充 ...

  4. Linux 14.04lts 环境下搭建交叉编译环境arm-linux-gcc-4.5.1

    交叉编译工具链是为了编译.链接.处理和调试跨平台体系结构的程序代码,在该环境下编译出嵌入式Linux系统所需要的操作系统.应用程序等,然后再上传到目标板上. 首 先要明确gcc 和arm-linux- ...

  5. Linux主机上实现树莓派的交叉编译及文件传输,远程登陆

    0.环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS:官网下的的raspb ...

  6. FFmpeg和X264的交叉编译环境

    在下载好了FFmpeg和X264的源码包之后,在Linux下进行安装的基本流程就是切换到其源码的根目录,然后以此执行以下命令.基本上所有的开源源码包的默认编译安装都是这三步. ./configure ...

  7. Windows7 64位系统搭建Cocos2d-x-2.2.1最新版以及Android交叉编译环境(详细教程)

    Windows7 64位系统搭建Cocos2d-x-2.2.1最新版以及Android交叉编译环境(详细教程) 声明:本教程在参考了以下博文,并经过自己的摸索后实际操作得出,本教程系本人原创,由于升级 ...

  8. Ubuntu 树莓派2b交叉编译环境

    在一个平台上生成另一个平台上的可执行代码.为什么要大费周折的进行交叉编译呢?一句话:不得已而为之.有时是因为目的平台上不允许或不能够安装所需要的编译器,而又需要这个编译器的某些特征:有时是因为目的平台 ...

  9. Ubuntu实现树莓派交叉编译

    一.交叉编译 在一个平台上生成另一个平台上的可执行代码.为什么要大费周折的进行交叉编译呢?一句话:不得已而为之.有时是因为目的平台上不允许或不能够安装所需要的编译器,而又需要这个编译器的某些特征:有时 ...

随机推荐

  1. CRT/LCD/VGA Information and Timing【转】

    转自:http://www.cnblogs.com/shangdawei/p/4760933.html 彩色阴极射线管的剖面图: 1. 电子QIANG Three Electron guns (for ...

  2. django Rest Framework---缓存通过drf-extensions扩展来实现

    什么情况下使用缓存 1.不经常更新的数据 2.用户经常访问的一些页面,比如商品列表页.商品详情页等 3.用户经常修改的一些操作:购物车.订单中心等 关于DRF缓存扩展可以参考文档:http://chi ...

  3. H5页面调用手机打电话功能

    <head>里面加上: <meta name="format-detection" content="telephone=yes"/> ...

  4. C/C++的64位整型

    在C/C++中,64为整型一直是一种没有确定规范的数据类型.现今主流的编译器中,对64为整型的支持也是标准不一,形态各异.一般来说,64位整型的定义方式有long long和__int64两种(VC还 ...

  5. 玲珑OJ 1129 - 喵哈哈村的战斗魔法师丶坏坏い月

    1129 - 喵哈哈村的战斗魔法师丶坏坏い月 Time Limit:3s Memory Limit:256MByte Submissions:315Solved:71 DESCRIPTION 坏坏い月 ...

  6. Linux系统运维笔记(三),设置IP和DNS

    Linux系统运维笔记(三),设置IP和DNS 手工配置静态的IP地址 也就是手工配置IP地址.子网掩码.网关和DNS. vi /etc/sysconfig/network-scripts/ifcfg ...

  7. kaldi 三个脚本cmd.sh path.sh run.sh

    参考   kaldi 的全部资料_v0.4 cmd.sh 脚本为: 可以很清楚的看到有 3 个分类分别对应 a,b,c.a 和 b 都是集群上去运行这个样子, c 就是我们需要的.我们在虚拟机上运行的 ...

  8. Spark中hashshuffle与sortshuffle

    在spark1.2以上的版本中,默认shuffle的方式已经变成了sortshuffle(在spark.shuffle.manager修改org.apache.spark.shuffle.sort.H ...

  9. 9-2 The Tower of Babylon uva437 (DP)

    题意:有n种立方体 每种都有无穷多个 要求选一些立方体叠成一根尽量高的柱子  (可以自行选择哪条边为高 )使得每个立方体的底面都严格小于他下方的立方体 为DAG模型 在任何时候 只有顶面的尺寸会影响到 ...

  10. 【LeetCode】65. Valid Number

    Difficulty: Hard  More:[目录]LeetCode Java实现 Description Validate if a given string can be interpreted ...