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


    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 之前加上命令即可。
  • 相关阅读:
    ie下常见的css兼容问题
    jQuery Easing 使用方法及其图解
    数组中常用的15个方法
    js按位运算符及其妙用
    图片格式知多少
    Linux top命令的用法详解
    Another app is currently holding the yum lock; waiting for it to exit...
    ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this S tatem
    Gitlab与Jenkins结合构成持续集成(CI)环境
    cobbler无人值守安装
  • 原文地址:https://www.cnblogs.com/02xiaoma/p/3505698.html
Copyright © 2020-2023  润新知