|
本帖最后由 jc天马行空 于 2017-3-30 09:24 编辑
前言:
十几天前想给自己的wdr7500 v3用上石像鬼双面板固件,于是穷尽洪荒之力在网上找,发现:
1)有些儿所谓大神,完全把这个当做卖点,让你进群,然后就是各种开车、各种踢人
2)自己编译吧,网上几乎没有直接相关教程,要么就是没讲明,让我等小白望而却步
3)脚本目的,让石像鬼固件添加Luci一键化,你也可以去看看我对build.sh进行了哪些修改,然后就能明白一些东西了
4)本脚本适用于目前的石像鬼固件1.9.2,后续如果石像鬼有变动再更新,或者你也可以直接仿造我的修改对新脚本进行修改
5)鉴于有些朋友有啥新技术就藏着掖着,因此【石像鬼】终于实现双界面无缝来回切换,不用改端口方法就不公开了,自用~~
功能说明:
1)自动添加Luci支持
2)自动修改uhttpd端口,如需自定义,见使用方法3)
3)默认开启wifi(openwrt源代码是关闭的)
4)其他更多自动功能,有时间再添加吧
5)自动设置无线-国家为CN,从而支持13信道
6)自动进行一些修改和设置以防几个可能的编译错误
错误一:石像鬼固件编译 qos-gargoyle出错的解决方法
错误二:编译libsodium提示缺少libpthread依赖
7)自动修改luci的依赖为+PACKAGE_luci-theme-bootstrap:luci-theme-material,解决默认bootstrap必选的问题
更新记录:
----------------------------2017-3-29------------------------------------
1)修正一些情况下nodejs命令不存在的问题,跟官方反馈了尚无回应,先自己修正着 2017-3-30 update:官方已经采纳了我的建议,自己重新clone的话无需再修改此项了
2)修改uhttpd端口的修改代码,防止配置文件非默认值情况下脚本修改无效问题
3)自动勾选httpd-gargoyle,防止遗忘
4)彻底解决官方脚本遗漏package下一些包如pcre、libsodium、diffutils等的问题
使用前提:
1)你的Linux至少要能成功编译过openwrt固件。如果你编译openwrt都不会或没成功过,那么你还是先绕道学习下编译openwrt,本帖不提供编译openwrt辅导!
2)研究和修改这个还是花了些时间精力的,转载请注明,欢迎也期望加分~
3)一切编译openwrt的前提,你的网得能成功更新feeds等
使用方法:
1)下载gargoyle源码后,将本帖提供的build.sh替换根目录(附图gargoyle目录)下的相应脚本,注意检查替换后build.sh是否具有0755可执行权限,没有的话修改之
2)支持添加自己的luci包或者package包。luci包请放在gargoyle根目录my_luci文件夹下;package包请放在根目录my_package文件夹下。对应文件夹自己新建
luci包将复制到feeds/luci/applications下,所以如果你的luci makefile是类似下面这样的,请注意luci包内一些文件特别是脚本文件是否具有可执行权限
- #
- # Copyright (C) 2008-2014 The LuCI Team <luci@lists.subsignal.org>
- #
- # This is free software, licensed under the Apache License, Version 2.0 .
- #
- include $(TOPDIR)/rules.mk
- LUCI_TITLE:=Material Theme
- LUCI_DEPENDS:=
- include ../../luci.mk
- # call BuildPackage - OpenWrt buildroot signature
复制代码
3)默认luci http端口为8080,https端口为433,如需修改,请修改build.sh开头变量
- #设置luci的http端口,不能为80
- uhttpd_http_port="8080"
- #设置luci的https端口,不能为443
- uhttpd_https_port="433"
复制代码 4)脚本中设置了几个暂停(主要是为了能在编译前进行一些个性化设置),暂停后要继续直接按enter键:
- #暂停提示一
- "Press any key to patch source"
- #暂停提示二
- "Press any key to patch kernel"
- #暂停提示三
- Patch done! Press any key to start building.
复制代码 其中提示一在make menucofig之前,提示二、三在make menuconfig之后,make V=99之前。能在这些暂停之后做什么自己想哈
5*)注意,要想双面板,进入menuconfig之后将httpd_gargoyle和uhttpd同时选上(2017-3-29脚本加入自动勾选httpd-gargoyle,uhttpd的话只要你选了luci就会勾选上)
小技巧:如何搜索你想要的包:在menuconfig界面,按反斜杠/键,然后输入报名如httpd_gargoyle就能搜索了
6)如何编译:在石像鬼根目录(图中gargoyle目录),make custom,然后静候menuconfig出现,接下来就是你熟悉的openwrt编译过程了
7)脚本中已经加入默认开启wifi,对于目前的openwrt,无需自己再去手动修改
注意事项:
1)石像鬼固件编译 qos-gargoyle出错的解决方法
2)后续自己修改脚本的话,记得:
- 修改:
- git clone git://git.openwrt.org/packages.git
- 为:
- git clone -b for-15.05 https://github.com/openwrt/packages.git
复制代码 不然会缺失一些libs
小技巧:
1)依赖问题很头疼,不知道选哪些,怎么办?
一个投机取巧的方法就是,先刷一份别人编译好的功能正常的固件,putty登录192.168.1.1,导出别人的列表,看看人家选了啥
- opkg list-installed|awk '{print $1}' >/tmp/list.txt
复制代码 然后到/tmp/目录把list.txt下载下来看,menuconfig时依样画葫芦勾选
2)一样的源码,人家编译出来的固件功能正常,而我的却有功能不正常?
这个很可能是你漏选了一些依赖或者模块了,想知道跟别人比,自己漏选了哪些怎么办?请看:
- #登录刷好自己固件的路由,导出自己的列表,假设叫my_list.txt
- 1、opkg list-installed |awk '{print $1}' >/tmp/my_list.txt
- # 上传别人的list到/tmp/,然后比较跟别人的相比,自己少了啥
- 2、cd /tmp
- 3、grep -vwf my_list.txt list.txt >lack.txt
- #把lack.txt下载下来就能查看了
复制代码
脚本下载:
老规矩,伸手党不可见~~
附加资源:
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
查看全部评分
|