您的位置:首页 > 运维架构

为TL-WR720N编译带mentohust和njit-client的openwrt固件

2020-02-13 04:36 441 查看

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

转载于:https://www.cnblogs.com/02xiaoma/p/3505698.html

  • 点赞
  • 收藏
  • 分享
  • 文章举报
anppcw1784 发布了0 篇原创文章 · 获赞 0 · 访问量 225 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: