找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 169259|回复: 1551

[原创脚本]--OpenwrtCompileScript(openwrt编译脚本)

 火... [复制链接]
发表于 2018-10-23 11:36 | 显示全部楼层 |阅读模式
本帖最后由 ITdesk 于 2020-10-12 17:02 编辑

序言  
          降低编译难度,减少重复的步骤,但不利于学习,此脚本适用于有点openwrt编译的基础的最佳,完全没有编译基础的请去补充相关知识,自己写的几篇小帖子不清楚的可以去看下     传送门      
            想学点东西请走这里:    新手折腾进阶篇---------openwrt编译入门(绝对详细版)
            调侃归调侃,这个脚本对新手是无脑的但要点基础,起码你要会选择机型与插件,有点基础的可以说是升级补丁,加快你的编译速度,写这个脚本的初衷就是编译的过程重复太多,所以写了脚本
         


测试
            测试系统:ubuntu18.4()          本机:4GB内存 + 100G硬盘空间
             需要 良好的网络环境
            不要用root用户进行编译!!!!!

               
                通知                            
                            庆祝祖国70周年,OpenwrtCompileScript正式开源
                           
                              ps:脚本链接                         https://github.com/openwrtcompileshell/OpenwrtCompileScript.git (给个回复可行??不想沉贴)
                     
                               收集一下官方openwrt源码的个性化设置 :https://www.right.com.cn/forum/thread-1312281-1-1.html      

                           关联一下:恩山首发-Github Gitpod云编译(有交互界面 )https://www.right.com.cn/forum/thread-1573038-1-1.html          

                                          本人所写的教程集合:传送门   
                        
                     
交流技术适当吹水群:667491026   (拒绝大爷公子伸手党)


OpenwrtCompileScrip使用视频

       鉴于有很多人还是不清楚的脚本怎么用,所以录制了一下视频,有需要群文件自取

        



               
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------                                             
                                                                                                分割线
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

使用方法
1.先将脚本下载到ubuntu的根目录    
  1. git clone https://github.com/openwrtcompileshell/OpenwrtCompileScript.git
复制代码


   
     

2.执行脚本
   
  1.   cd OpenwrtCompileScript && bash openwrt.sh
复制代码
      
         这是脚本自检程序,不影响你任何东西,主要检查网络

        
        主界面


     

3.第一次编译选择 1.开始搭建编译环境
        

     创建你的openwrt文件夹名,回车确定

      


4.下载官方源代码

     

     自行选择


5.下载DL
         


6.搭建完成,回车进行编译

        

6.选择你要的编译的机器型号与插件

      

      

      


             保存退出 > 是否保存配置 > 是否使用多线程编译 > 开始编译


            PS :多线程编译建议二次编译使用,第一次编译使用多线程,容易保错


第一次脚本运行完成以后,想要调用脚本可以输入以下命令
  1. bash $openwrt
复制代码

      



  危险操作!!!
    4.恢复编译环境
   
      

       一键回到解放前就是恢复刚开始编译的样子(慎用)


     
           输入你要恢复的文件夹
     
      
       恢复完成,回车继续编译

注意事项!!!!

        请勿删除根目录下的这个文件
      











以下问题不予回复或看心情回复
1.脚本怎么用
2.linux怎么装
3.手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹手工竹梯子如何搭建
4.有问题不写清楚不上图(如:脚本报错了,回车不行啊,上图上图上图写清楚你做的操作,不然看心情回)

























本帖子中包含更多资源

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

×

点评

你说的很对,我赞同你的说法。: 5.0
对固件开发感兴趣的话,大家可以关注下"跟着佐大学OpenWrt开发"培训班~  发表于 2018-10-23 12:30
你说的很对,我赞同你的说法。: 5
强力支持~  发表于 2018-10-23 12:28

评分

参与人数 42恩山币 +48 收起 理由
a291*** + 1 不要怂、就是干!
zm*** + 1 几亿网民,我们俩竟然神奇的在恩山相遇了!来,1分也是分!
alpha*** + 1 感谢搜集分享!
ku*** + 2 几亿网民,我们俩竟然神奇的在恩山相遇了!来,1分也是分!
Tenso*** + 1 送你一块“恩山”牌肥皂,喏,就在你脚下、捡一下吧……
zja*** + 2 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
jon*** + 1 强大的恩山!(以下重复1万次)
cn*** + 1 送你一块“恩山”牌肥皂,喏,就在你脚下、捡一下吧……
z1986*** + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
Joe*** + 1 强大的恩山!(以下重复1万次)
zz*** + 1 蟹蟹楼主~
lzz*** + 1 强大的恩山!(以下重复1万次)
Twi*** -1 强大的恩山!(以下重复1万次)
aaron*** + 1 How ever,this is JB useful!
ly*** + 1 感谢你的分享,无论怎样,你都是最无私的人!
fly_*** + 2 一看就是觉得高端、大气、上档次!
seg*** + 2 强大的恩山!(以下重复1万次)
Hugo*** + 2 率全体恩山路由党以及党魁向你学习!
sa*** + 1 刚下载你的脚本,我试试!大神啊!脚本我看了一下!真的水平很高!
wjq*** + 1 一看就是觉得高端、大气、上档次!
Class*** + 1 强大的恩山!(以下重复1万次)
Pea*** + 1 一看就是觉得高端、大气、上档次!
evil*** + 1 面对这种帖子,我内心复杂,真不知道说什么好……
tvis*** + 1 楼主大神,太牛逼了,顶!~~
ctr5*** + 1 支持一下
as_*** + 1 不要怂、就是干
H*** + 1 率全体恩山路由党以及党魁向你学习!
zhl*** + 2 别说了,打他!!!
a*** + 2 面对这种帖子,我内心复杂,真不知道说什么好……
scy*** + 1 强大的恩山!(以下重复1万次)
chd*** + 1 强大的恩山!(以下重复1万次)
fanxi*** + 1 面对这种帖子,我内心复杂,真不知道说什么好……
nin*** + 1 率全体恩山路由党以及党魁向你学习!
so*** + 1 率全体恩山路由党以及党魁向你学习!
潜*** + 1 兄弟,你肥皂又掉了…
巍巍*** + 1 有才
一剑*** + 1 强大的恩山!(以下重复1万次)
shua*** + 1 面对这种帖子,我内心复杂,真不知道说什么好……
不知*** + 1 率全体恩山路由党以及党魁向你学习!
zlg8*** + 1 强大的恩山!(以下重复1万次)
yaj*** + 2 强大的恩山!(以下重复1万次)
love*** + 1 率全体恩山路由党以及党魁向你学习!

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2022-10-22 14:19 | 显示全部楼层
ken01982 发表于 2022-10-21 18:00
还有你这个是怎么添加插件库的?比如我要把这三个人github上的插件库添加进去https://github.com/kenzok8 ...

feeds.conf.default 了解一下,不建议添加过多人的库,一般建议你要什么拉什么,冲突有你受的
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-21 18:00 | 显示全部楼层
ITdesk 发表于 2022-10-21 14:14
如果你不想要太久,你要选择noclean_make,然后全新编译就快了

还有你这个是怎么添加插件库的?比如我要把这三个人github上的插件库添加进去https://github.com/kenzok8/openwrt-packages
https://github.com/kiddin9/openwrt-packages
https://github.com/281677160/openwrt-package
在这脚本上要怎么操作呢?还是直接打命令添加进去?

点评

feeds.conf.default 了解一下,不建议添加过多人的库,一般建议你要什么拉什么,冲突有你受的  详情 回复 发表于 2022-10-22 14:19
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-21 14:14 | 显示全部楼层
ken01982 发表于 2022-10-21 10:03
对啊,我就是执行1,全新的编译。时间好长,所以我才会在这问一下。我找个时间再试一下

如果你不想要太久,你要选择noclean_make,然后全新编译就快了

点评

还有你这个是怎么添加插件库的?比如我要把这三个人github上的插件库添加进去https://github.com/kenzok8/openwrt-packages https://github.com/kiddin9/openwrt-packages https://github.com/281677160/openwrt-p  详情 回复 发表于 2022-10-21 18:00
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-21 10:03 | 显示全部楼层
ITdesk 发表于 2022-10-20 17:55
问题:脚本自带的是直接清理源码的功能,这会导致二次编译还是和第一次编译一样长时间。
   
我的 ...

对啊,我就是执行1,全新的编译。时间好长,所以我才会在这问一下。我找个时间再试一下

点评

如果你不想要太久,你要选择noclean_make,然后全新编译就快了  详情 回复 发表于 2022-10-21 14:14
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-20 17:55 | 显示全部楼层
ken01982 发表于 2022-10-19 09:28
这脚本好是好,但缺少了个清理缓存和配置的功能rm -rf ./tmp && rm -rf .config  # 清除编译配置和缓存,脚 ...



问题:脚本自带的是直接清理源码的功能,这会导致二次编译还是和第一次编译一样长时间。
   
我的代码二次编译其实是下面这句,如果你执行了这句理论上不会出现说第二次编译跟第一次长,make clean清理之前的编译好文件,最多半个小时就可以完成了,这个适合用来编译这个版本的设备,而不更新源码
  1. <span class="pl-c1" style="box-sizing: border-box; color: var(--color-prettylights-syntax-constant); font-family: ui-monospace, SFMono-Regular, &quot;SF Mono&quot;, Menlo, Consolas, &quot;Liberation Mono&quot;, monospace; font-size: 12px; white-space: pre; background-color: rgb(255, 255, 255);">echo</span><span style="color: rgb(36, 41, 47); font-family: ui-monospace, SFMono-Regular, &quot;SF Mono&quot;, Menlo, Consolas, &quot;Liberation Mono&quot;, monospace; font-size: 12px; white-space: pre; background-color: rgb(255, 255, 255);"> -e </span><span class="pl-s" style="box-sizing: border-box; color: var(--color-prettylights-syntax-string); font-family: ui-monospace, SFMono-Regular, &quot;SF Mono&quot;, Menlo, Consolas, &quot;Liberation Mono&quot;, monospace; font-size: 12px; white-space: pre; background-color: rgb(255, 255, 255);"><span class="pl-pds" style="box-sizing: border-box; color: var(--color-prettylights-syntax-string);">"</span><span class="pl-smi" style="box-sizing: border-box; color: var(--color-prettylights-syntax-storage-modifier-import);">$green</span>   clean_make <span class="pl-smi" style="box-sizing: border-box; color: var(--color-prettylights-syntax-storage-modifier-import);">$white</span>        执行make clean清理一下源码然后再进行编译<span class="pl-pds" style="box-sizing: border-box; color: var(--color-prettylights-syntax-string);">"</span></span>
复制代码


问题:但缺少了个清理缓存和配置的功能rm -rf ./tmp && rm -rf .config  # 清除编译配置和缓存
我不知道你没有看到这个界面,无论你执行clean_make还是noclean_make,你都应该会看到这个提示,你如果选择   以全新的config进行编译 (适合编译新机型)  就会执行你所谓的rm -rf .config && rm -rf ./tmp

  1. source_config() {
  2.         clear
  3.                  echo "----------------------------------------------------------------------"
  4.                  echo -e "$green选择编译方式$white"
  5.                  echo ""
  6.                  echo "     1.以全新的config进行编译 (适合编译新机型)"
  7.                  echo "     2.继续上次的编译(不对配置做任何操作)"
  8.                  echo ""
  9.                  echo -e "$yellow PS:如果源码进行过重大更新,建议直接选择1.以全新config进行编译,以减少报错$white"
  10.                  echo "----------------------------------------------------------------------"
  11.         read -p "请输入你的决定:"  config
  12.                 case "$config" in
  13.                         1)
  14.                         rm -rf .config && rm -rf ./tmp
  15.                         ;;
  16.                         2)
  17.                         echo ""
  18.                         ;;
  19.                         *)
  20.                         clear && echo  "Error请输入正确的数字 [1-2]" && Time
  21.                         source_config
  22.                         ;;
  23.                 esac
  24. }
复制代码






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

使用道具 举报

发表于 2022-10-19 09:28 | 显示全部楼层
这脚本好是好,但缺少了个清理缓存和配置的功能rm -rf ./tmp && rm -rf .config  # 清除编译配置和缓存,脚本自带的是直接清理源码的功能,这会导致二次编译还是和第一次编译一样长时间。还有一个是不执行清理源码再编译的功能 ,虽然二次编译 速度快了,但会造成编译出来的固件特别大。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-9-22 09:52 | 显示全部楼层
long1983 发表于 2022-9-20 16:28
我说的是不用刀客,

那就要看你什么时候把op的编译环境依赖装好了,op也是linux,补齐依赖没什么问题,我都经常拿来跑shell脚本
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-9-20 16:28 | 显示全部楼层
ITdesk 发表于 2022-9-19 11:14
理论上没有问题,op,docker一个ubuntu18.4,然后让脚本跑起来,就可以做到你要的op编译op

我说的是不用刀客,
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-9-19 11:14 | 显示全部楼层
jxcz520 发表于 2022-9-3 20:53
没梯子可以编译成功吗?

不行,有失败可能性很大
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-9-19 11:14 | 显示全部楼层
long1983 发表于 2022-9-3 19:49
我还以为用op直接编译op呢,

理论上没有问题,op,docker一个ubuntu18.4,然后让脚本跑起来,就可以做到你要的op编译op
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-9-3 20:53 | 显示全部楼层
没梯子可以编译成功吗?
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-9-3 19:49 | 显示全部楼层
我还以为用op直接编译op呢,
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-6-6 18:51 | 显示全部楼层
感谢分享,
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-6-5 17:23 | 显示全部楼层
感谢大佬的脚本
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-6-5 16:58 | 显示全部楼层
牛!  谢谢分享!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 13:08

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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

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