wifidog编译说明

wifidog认证流程图

http://blog.csdn.net/ellisonfan/article/details/11961833

authpuppy

http://www.authpuppy.com/authpuppy/2014-1-28/209.html

wifidog源

https://dev.wifidog.org/svn/trunk/wifidog
svn https://dev.wifidog.org/svn/trunk/wifidog-auth

内核编译Openwrt制作ipk动态更新文件

http://blog.csdn.net/gubenpeiyuan/article/details/8179409  内核编译
http://chaochaoblog.com/archives/1011

第一种:更改原有packages

在编译根目录下会有一个dl的目录,这个目录其实是“download”的简写,在编译前期,需要从网络下载的数据包都会放在这个目录下,这些软件包的一个特点就是,会自动安装在所编译的固件中,也就是我们make menuconfig的时候,为固件配置的一些软件包。如果我们需要更改这些源码包,只需要将更改好的源码包打包成相同的名字放在这个目录下,然后开始编译即可。编译时,会将软件包解压到build_dir目录下。 当然,你也可以自己在dl里面创建自己的软件包,然后更改相关的配置文件,让openwrt可以识别这个文件包。

由于我的项目更改的内容是底层的,需要跟固件一起安装。所以,我使用的方法就是直接更改dl目录下软件包,然后重新进行固件编译。感觉类似于Linux的内核编译。反复编过十多次,没有任何问题。

wifidog更改详细见: wifidog-appwifi集成文档.doc

打包替换dl中wifidog

tar -zcvf wifidog.tar.gz wifidog
tar -zcvf wifidog-20130917-440445db60b0c3aff528ea703a828b0567293387.tar.gz  wifidog-20130917

第二种:新建自己的packages

对于自己新建的package,而这个package又不需要随固件一起安装,换句话说,就是可以当做一个可选软件包的话。我们可以利用我们的SDK环境来单独编译,编译后会生成一个ipk的文件包。然后利用 opkg install xxx.ipk 来安装这个软件。


wifidog编译环境

apt-get install libtool*

先生成相应的Openwrt编译环境(sdk)

tar -xvf OpenWrt-SDK-x86-for-Linux-i686-gcc-4.1.2_uClibc-0.9.30.1.tar.bz2

然后解压来编译

~/OpenWrt/sdk/OpenWrt-SDK-x86-for-Linux-i686-gcc-4.1.2_uClibc-0.9.30.1$ make
~/bin/x86/packages/wifidog_20090925-1_x86.ipk

第一步:读取packages的Makefile文件

/OpenWrt/barrier_breaker/package/feeds/packages/wifidog$  Makefile  
修改
#PKG_VERSION:=20130917
PKG_VERSION:=appwifi

#PKG_SOURCE_VERSION:=440445db60b0c3aff528ea703a828b0567293387
PKG_SOURCE_VERSION:=1

第二步:下载相应的源代码包

/OpenWrt/barrier_breaker/dl$ wifidog-appwifi-1.tar.gz

第三步:解压此包(make package/wifidog/clean 会清除wifidog-appwifi)

/OpenWrt/barrier_breaker/build_dir/target-i386_uClibc-0.9.30.1$   wifidog-appwifi

第四步:编译此包,在bin/x86/packages里面产生ipk文件 (make package/wifidog/compile wifidog-appwifi)

~/OpenWrt/barrier_breaker/bin/x86/packages$ wifidog_appwifi-0_x86.ipk

安装ipk

rm  /home/wzs/.ssh/known_hosts
scp是有Security的文件copy,基于ssh登录。操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令。
文件传输
scp wifidog_20090925-1_x86.ipk   [email protected]:/tmp
文件夹传输
scp  -r wifidog   [email protected]:/tmp/
scp  -r packages [email protected]:/tmp/
opkg install wifidog_20090925-1_x86.ipk
Collected errors:
  satisfy_dependencies_for:Cannot satisfy the following dependencies for wifidog:
* iptables-mod-extra 
* iptables-mod-ipopt
* iptables-mod-nat-extra
* libpthread

--2014-04-10 09:08:47--  http://mirror2.openwrt.org/sources/wifidog-20130917-440445db60b0c3aff528ea703a828b0567293387.tar.gz

你可以尝试执行以下命令安装Wifidog:

opkg update # Optional
opkg install wifidog

appwifi的验证wifidog是否启动

192.168.11.1:2060/wifidog/status
机器码  
d76704ed6351c20bd7d2e87671fc6352
热点名称
000C291989D3

如您只想清除/编译某个模块,您可以做如下类似操作

make package/wifidog/clean
make package/wifidog/compile
make package/wifidog/install
/etc/init.d/wifidog enable
/etc/init.d/wifidog start
/usr/bin/wifidog-init 

openwrt 根目录make menuconfig

终端执行 make menuconfig, 在Network/captive portals/下选择wifidog 就有选择 WiFiDog 这一项了。

./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig