注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

從頭再來 Blog

一切將會如小生命的誕生一樣,從頭再來.....

 
 
 

日志

 
 

UBuntu 编译 Openwrt x86固件  

2017-07-19 11:30:58|  分类: Ubuntu |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

官方教程: https://wiki.openwrt.org/zh-cn/doc/howto/buildroot.exigence
1)更新源和安装编译支持软件包
sudo apt-get update
sudo apt-get install git-core build-essential libssl-dev libncurses5-dev unzip
sudo apt-get install subversion mercurial

2)通过源代码进行编译,下载过程非常慢
git clone git://git.openwrt.org/openwrt.git openwrt
cd openwrt ./scripts/feeds update -a ./scripts/feeds install -a
make defconfig make prereq make menuconfig

1)首先安装ubuntu ,不管版本,不管是server还是desktop版本,反正都是用命令行编译

2) 安装编译环境支持软件包
apt-get -y install curl wget tree grep gcj texinfo sharutils subversion ncurses-term libtool autoconf automake gcc-multilib bison screen gcc g++ binutils patch bzip2 flex make gettext unzip libc6 git-core build-essential libncurses5-dev zlib1g-dev gawk quilt asciidoc libz-dev

64位系统编译需要以下软件包:

apt-get install build-essential subversion libncurses5-dev zlib1g-dev gawk gcc-multilib flex git-core gettext libssl-dev

3)下载Openwrt x86源码,可能用git方式
     
git clone git://git.openwrt.org/openwrt.git


----------------------------------------------------------
以下是ubuntu 16.04 LTS 编译环境:
apt-get update
apt-get upgrade
apt-get install subversion build-essential git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl unzip

以编译LEDE为例:
git clone https://github.com/lede-project/source lede
cd lede
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
TargetSystem (x86) ---> (*) x86
Subtarget选中x86_64

配目标文件系统为 EXT4
Target Images --->
  • ext4
    取消选中ext4之外的其他镜像格式。

    Seconds to wait before booting the default entry
    改为0,每次启动时等待0秒。

    用web界面要加 luci,
    LuCI-->Collection选中luci。这个是通过网页访问软路由所必须的组建,建议选中;否则就只能使用虚拟化串口或ssh访问软路由了。

    LuCI->Applications中选中
    luci-app-ddns
    luci-app-qos
    luci-app-statistics
    luci-app-upnp
    luci-app-vnstat

    这是几个常见应用,根据个人喜好随便选。

    Base system
    取消选中dnsmasq
    选中dnsmasq-full
    因为dnsmasq-full支持ipset功能,对于基于域名的xx很有用。

    Network->File Transfer中选中
    curl
    wget
    顺手选中两个下载工具。

    Network->IP Addresses and Names中选中
    bind-dig
    ddns-scripts_No-IP_com。(用来支持no-ip.com的ddns服务)
    一个是测试工具;
    另一个是某个ddns支持,还有其他ddns支持,也可以酌情选中。

    Network->Routing and Rediction中选中
    ip-full
    这个很关键。

    Network中选中
    iperf3
    ipset
    一个是测试工具;
    另一个是ipset,用于支持基于域名的xx。

    Network->Web Servers/Proxies选中那些SS,如果您需要使用SS的话。

    Utilities->Editors中选中
    nano
    也可以选中vim,无所谓,反正都是文本编辑器,选个顺手的就好。

    Utilities->Shells中选中
    bash
    如果您喜欢自己写脚本,可以选中bash,比默认的ash强大一些。

    点击Save,保存为.config。
    一路Exit退出。

    最后:
  • make defconfig
  • make prereq
     make menuconfig

  • 这是交叉编译,首次编译时会自动下载很多编译工具的源代码,先编译得到编译工具;
    然后才是软路由和软件包的编译过程,期间也要下载所有的源代码。
    只要您的网速足够快,XX足够给力足够稳,一般40分钟左右可以完成编译。
    定量的说,网速也不用太快,只需要通过VXN测速,下行速率为100Mbps就够了,40分钟应该可以搞定。

    之后再次编译时,除非手动指定,否则很多工具不会重新编译,源代码也不会重新下载,编译速度会大大加快。

  •   评论这张
     
    阅读(45)| 评论(0)
    推荐 转载

    历史上的今天

    在LOFTER的更多文章

    评论

    <#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
     
     
     
     
     
     
     
     
     
     
     
     
     
     

    页脚

    网易公司版权所有 ©1997-2017