找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 19338|回复: 92

【2017-3-29】【船长福利】编译石像鬼+Luci面板固件不求人,送你一份改进版编译脚本

  [复制链接]
发表于 2017-3-19 16:31 | 显示全部楼层 |阅读模式
本帖最后由 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包内一些文件特别是脚本文件是否具有可执行权限
  1. #
  2. # Copyright (C) 2008-2014 The LuCI Team <luci@lists.subsignal.org>
  3. #
  4. # This is free software, licensed under the Apache License, Version 2.0 .
  5. #

  6. include $(TOPDIR)/rules.mk

  7. LUCI_TITLE:=Material Theme
  8. LUCI_DEPENDS:=

  9. include ../../luci.mk

  10. # call BuildPackage - OpenWrt buildroot signature
复制代码




  3)默认luci http端口为8080,https端口为433,如需修改,请修改build.sh开头变量
  1. #设置luci的http端口,不能为80
  2. uhttpd_http_port="8080"
  3. #设置luci的https端口,不能为443
  4. uhttpd_https_port="433"
复制代码
  4)脚本中设置了几个暂停(主要是为了能在编译前进行一些个性化设置),暂停后要继续直接按enter键:
  1. #暂停提示一
  2. "Press any key to patch source"
  3. #暂停提示二
  4. "Press any key to patch kernel"
  5. #暂停提示三
  6. 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)后续自己修改脚本的话,记得:
  1. 修改:
  2. git clone git://git.openwrt.org/packages.git
  3. 为:
  4. git clone -b for-15.05 https://github.com/openwrt/packages.git
复制代码
      不然会缺失一些libs

小技巧:
  1)依赖问题很头疼,不知道选哪些,怎么办?
       一个投机取巧的方法就是,先刷一份别人编译好的功能正常的固件,putty登录192.168.1.1,导出别人的列表,看看人家选了啥
  1. opkg list-installed|awk '{print $1}' >/tmp/list.txt
复制代码
       然后到/tmp/目录把list.txt下载下来看,menuconfig时依样画葫芦勾选

  2)一样的源码,人家编译出来的固件功能正常,而我的却有功能不正常?
       这个很可能是你漏选了一些依赖或者模块了,想知道跟别人比,自己漏选了哪些怎么办?请看:
  1. #登录刷好自己固件的路由,导出自己的列表,假设叫my_list.txt
  2. 1、opkg list-installed |awk '{print $1}' >/tmp/my_list.txt
  3. # 上传别人的list到/tmp/,然后比较跟别人的相比,自己少了啥
  4. 2、cd /tmp
  5. 3、grep -vwf my_list.txt list.txt >lack.txt
  6. #把lack.txt下载下来就能查看了
复制代码

脚本下载:
  老规矩,伸手党不可见~~


附加资源:
   
   




















本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 11恩山币 +23 收起 理由
HugoYuan + 1 我来恩山就是为了看你!
99010 + 5 亲,你这么厉害,我想做你的经纪人!
aaronsparty + 1 亲,你这么厉害,我想做你的经纪人!
Ruckus + 1 一看就是觉得高端、大气、上档次!
wgy2000 + 3 一看就是觉得高端、大气、上档次!
懒浮云 + 1 一看就是觉得高端、大气、上档次!
haxc + 5 拿去买糖吃吧!
血洗刀锋 + 3 支付宝已转500w给你!
Windows10 + 1 支付宝已转500w给你!
whoweasn + 1 亲,你太牛逼了,走,我请你吃鳇鱼头去~~~
adbyby + 1 被你感动了!支付宝已给你转帐50W.

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2017-3-19 17:46 | 显示全部楼层
jiqianghu 发表于 2017-3-19 17:22
gargoyle源码和openwrt同级目录,还是放到openwrt目录里?

这么猴急......等我帖子写完

点评

哈哈 最好能step by step操作啊  详情 回复 发表于 2017-3-19 18:00
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-19 18:00 | 显示全部楼层
jiqianghu 发表于 2017-3-19 18:00
哈哈 最好能step by step操作啊

这个................................

点评

石像鬼支持mt7628/88吗?我看官网只有mt7620的支持。  详情 回复 发表于 2017-3-19 18:10
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-19 19:43 | 显示全部楼层

已上传。。。。。。。。。。。。。。。。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-19 20:25 | 显示全部楼层
血洗刀锋 发表于 2017-3-19 20:10
大哥麻烦把目录给全,还有一种更简单的办法

那请有空赐教下~我这个是自己读懂脚本后摸索的

点评

你可以在石像鬼的左侧栏做个按钮,点击跳转到luci界面,luci界面也做个跳转链接就行了,完美解决了,不需要额外的改什么端口,麻烦的一笔  详情 回复 发表于 2017-3-19 20:27
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-19 20:28 | 显示全部楼层
血洗刀锋 发表于 2017-3-19 20:27
你可以在石像鬼的左侧栏做个按钮,点击跳转到luci界面,luci界面也做个跳转链接就行了,完美解决了,不需 ...

这个没研究,有机会教我下~~

点评

我记得以前有人做过的,就是在石像鬼界面开个跳转链接比较麻烦(石像鬼的资料比openwrt的还少,没办法,自己慢慢摸索吧)  详情 回复 发表于 2017-3-19 20:33
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-19 20:37 | 显示全部楼层
血洗刀锋 发表于 2017-3-19 20:33
我记得以前有人做过的,就是在石像鬼界面开个跳转链接比较麻烦(石像鬼的资料比openwrt的还少,没办法, ...

额,我还以为你已经实现了

点评

我看了代码。。。。。。。  详情 回复 发表于 2017-3-19 20:44
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-19 20:54 来自手机 | 显示全部楼层
血洗刀锋 发表于 2017-3-19 20:44
我看了代码。。。。。。。

那就给代码相关帖子或者链接吧~

点评

照猫画虎弄个按钮或者链接就可以了  详情 回复 发表于 2017-3-19 20:55
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-19 20:58 来自手机 | 显示全部楼层
haxc 发表于 2017-3-19 20:55
照猫画虎弄个按钮或者链接就可以了

关键没看到过这样的固件

点评

我的意思是,添加个按钮,直接打开 比如  详情 回复 发表于 2017-3-19 21:04
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-19 21:56 | 显示全部楼层
jiqianghu 发表于 2017-3-19 18:10
石像鬼支持mt7628/88吗?我看官网只有mt7620的支持。

这玩意儿关键看openwrt cc的支持,cc支持了就能编译
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-20 13:50 | 显示全部楼层
血洗刀锋 发表于 2017-3-20 11:02
不需要把端口错开,地址都不一样的

你光在这边说,也没见你给出什么实质的东西
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-20 21:02 | 显示全部楼层
wgy2000 发表于 2017-3-20 20:58
支持一下,表示用不到LUCI了,常用软件己有石像鬼界面

问一下,石像鬼界面添加自定义按钮如何实现?想加一个跳转Luci的按钮,跳转方法知道了,就是添加按钮还找不到方法
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-20 22:06 | 显示全部楼层
wgy2000 发表于 2017-3-20 21:44
找个地方添加

对应的JS文件加一句

还是你热心,不过我刚刚自己摸索出来个更简单的方法,现在双界面之间都能自由切换了



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-20 22:09 | 显示全部楼层
血洗刀锋 发表于 2017-3-20 20:15
我只提供思路啊。。。。。。具体的自己写

其实,你大概就是不愿意分享吧~,不过没关系,结合几位热心网友和自己的摸索,我也实现了




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

其实我是不会写。。。哈哈哈哈我只会说  详情 回复 发表于 2017-3-21 16:08
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-3-21 17:01 | 显示全部楼层
本帖最后由 jc天马行空 于 2017-3-21 17:06 编辑
血洗刀锋 发表于 2017-3-21 16:08
其实我是不会写。。。哈哈哈哈我只会说

大神,你每次都给我个概念,然后都是各种笑的表情让我瘆得慌
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-16 21:06

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表