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 之前加上命令即可。