openwrt的trunk版已经支持720N了。简单好多。

首先下载openwrt源码,我下的是trunk版

svn co svn://svn.openwrt.org/openwrt/trunk/  
  • 然后,我用的是BT5编译的,自己是root用户,而openwrt不希望root用户来编译它。

    修改include/prereq-build.mk,将18~20行用#注释掉。

  • 接着加入njit-client的feeds。

    

cp feeds.conf.default feeds.conf

    在feeds.conf最后一行加入

src-svn njit https://github.com/liuqun/openwrt-clients/trunk/njit
  • 下载扩展软件包(先不要安装)
 ./scripts/feeds update -a
  • 然后修改makfile。将auth.c的njit-RefreshIP脚本调用屏蔽。

    即修改feeds/njit/njit8021xclient/Makefile,在Build/Prepare下加入一句Sed替换

    注意39、40行前面都是Tab。
        这里下载下来源码里的版本号是V3.60-6303,和我用的inode一样。如果有修改需要的在makefile里像上面一样加个sed替换即可。

  • 然后安装扩展包
./scripts/feeds install -a
  • njit已搞定,接下来是mentohust

    在package下新建一目录“mentohust”,里面新建一个Makefile,内容为:

 1 #
 2 # Copyright (C) 2006-2011 Xmlad.com
 3 #
 4 # This is free software, licensed under the GNU General Public License v2.
 5 # See /LICENSE for more information.
 6 #
 7 
 8 include $(TOPDIR)/rules.mk
 9 
10 PKG_NAME:=mentohust
11 PKG_VERSION:=0.3.1
12 PKG_RELEASE:=1
13 
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=http://mentohust.googlecode.com/files/
16 PKG_MD5SUM:=c7033ba8d8e75294924ed03f4b7b0c45
17 
18 PKG_INSTALL:=1
19 
20 include $(INCLUDE_DIR)/package.mk
21 
22 define Package/mentohust
23   SECTION:=net
24   CATEGORY:=Network
25   DEPENDS:=+libpcap
26   TITLE:=An CERNET client daemon
27   URL:=http://code.google.com/p/mentohust/
28   SUBMENU:=CERNET
29 endef
30 
31 define Package/mentohust/description
32 An CERNET client daemon,
33 Most usually used in China collages.
34 endef
35 
36 define Build/Prepare
37         $(call Build/Prepare/Default)
38         $(SED) 's/dhclient/udhcpc -i/g' $(PKG_BUILD_DIR)/src/myconfig.c
39 endef
40 
41 CONFIGURE_ARGS += \
42         --disable-encodepass \
43         --disable-notify
44 
45 # XXX: CFLAGS are already set by Build/Compile/Default
46 MAKE_FLAGS+= \
47         OFLAGS=""
48 
49 define Package/mentohust/conffiles
50 /etc/mentohust.conf
51 endef
52 
53 define Package/mentohust/install
54         $(INSTALL_DIR) $(1)/usr/bin
55         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/mentohust $(1)/usr/bin/
56         $(INSTALL_DIR) $(1)/etc
57         $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/mentohust.conf $(1)/etc/
58 endef
59 
60 $(eval $(call BuildPackage,mentohust))

    这里注意,每行前面的不是空格,是Tab。

  • 然后make menuconfig,在Network下面勾选njit,选了之后可以顺便把下面的njit的luci界面也选了,在Network->CERNET下勾选mentohust。这样编译出来的固件就带有这两个客户端了。menuconfig其它选项比如luci什么不再多说了。慢慢摸索中。
  • 另外这样编译出的njit-client是带luci界面的(如果你在menuconfig里选中了的话),mentohust不带。自己修改/etc/mentohust.conf即可。自启动的话,修改/etc/rc.local,在最后一行exit 0 之前加上命令即可。