文档章节

如何编译符合自己路由器的的OpenWrt固件

4.Real
 4.Real
发布于 2014/11/06 16:45
字数 860
阅读 591
收藏 0

前言:

        玩OpenWrt已经快两年了,最早接触是因为CHDBITS,选择了G300NH2来搭载,发现性能较差,之后就更换为AG300H使用官方原版挂种100下载速度700kb+稳定运行,后来先后购入了乐视小米ipad后就有了越来越多的想法,安装了各种插件,过一段时间更新后发现有问题,然后只有重新刷,每次都很繁琐,5月以来使用了很多基友的包(已经集成了很多插件)发现不大稳定,所有萌发了自己编译符合自己AG300H的固件来。


一、准备工作

1、ubuntu+1 VM虚拟机什么都可以

2、固件获取:svn://svn.openwrt.org/openwrt/branches/barrier_breaker  你需要什么版本的就下载什么版本

二、更新系统软件

1、使用 root 账户登录 ubuntu

2、使用 apt-get update 更新组建

3、安装编译需要的组件(如下\绿色是aria2编译需要的组建

apt-get install g++
apt-get install libncurses5-dev
apt-get install zlib1g-dev
apt-get install bison
apt-get install flex
apt-get install unzip
apt-get install autoconf
apt-get install gawk
apt-get install make
apt-get install gettext
apt-get install gcc
apt-get install binutils
apt-get install patch
apt-get install bzip2
apt-get install libz-dev
apt-get install asciidoc
apt-get install subversion

apt-get install texinfo

apt-get install sharutils

apt-get install ncurses-term

apt-get install git-core

apt-get install sphinxsearch

apt-get install libtool

apt-get install sphinx-common

apt-get install libssl-dev

apt-get install libsqlite3*

apt-get install intltool

apt-get install libiconv*

apt-get install gstreamer-0.10*

apt-get install glib2.0 

apt-get install libxml2-dev

apt-get install qemu

sphinxsearch libtool sphinx-common

4、退出 root身份  (exit)

5、新建一个账户  adduser openwrt    sodu openwrt

5、为了防止文件读写权限造成问题,需要将源码copy到openwet的根目录下进行所有操作

                        cd ~

                        cp -R /home/user/ ./

三、加载RA-MOD

1、添加ra-mod 编辑目录下的feeds.conf.defaul 注释掉原有的Luci 并加入 

                    src-git ramod git://github.com/ravageralpha/my_openwrt_mod.git

2、执行以下命令

                ./scripts/feeds uninstall luci

                ./scripts/feeds update -a

                ./scripts/feeds install -a

                ./scripts/feeds install luci                

                ./scripts/feeds update -a

                ./scripts/feeds install -a

               svn update

这样就可以显示出来了,不然有些同学说我加了ra-mod的怎么不显示呀,或没有显示luci

四、进入订制界面

                    make defconfig

                    make menuconfig

五、按你的需求选择需要的功能

usbutils 

Garget---system---atherosar7xxx/ar9xxx  

路由芯片

Target---profile---buffalowzr-hp-ag300h

我的路由型号

Base---system---block-mount

USB挂载

                         libstdcpp

安装aria2需要

luci---collections---luci

添加luci界面

         applications---luci-app-ddns

dns界面

                               luci-app-hd-idle

磁盘休眠控制界面

                               luci-app-multiwan

多拨控制界面

                               luci-app-qos

qos界面

                               luci-app-samba

samba界面

                               luci-app-ushare

ushare界面

        translations---luci-i18n-chinese

luci中文语言包

kernelmodules---filesytems---kmod-fs-ext4

硬盘ext4格式支持

                          nativelanguagesupport---kmod-nls-utf8

utf8支持??

                          usbsupport---kmod-usb-ohci

Ohci控制器

                                               kmod-usb-storage

添加储存设备驱动

                                               kmod-usb-storage-extras

储存设备扩展

                                               kmod-usb-uhci

Uhci控制器

                                               kmod-usb2

Uusb2.0

bootloaders---uboot-ar71xx-nbg460n_550n_550nh

默认

libraries---filesystem---libext2fs

硬盘格式化工具

               ssl---libopenssl

安装aria2需要

               libffmpeg-mini

ushare需要

               libxml2

安装aria2需要

network---filetransfer---aria2

aria2(我没选)

                                    vsfpd

ftp服务器

                                    multiwan

多拨软件

                                    ppp

默认

                                       ppp-mod-pppoe

默认

                                    samba36-server

Samba共享

                                    wpad-mini

默认

multimedia---ushare

ushare媒体共享

六、 编译

                    make v=99

第一次编译时间较久,make v=99最稳定。

5、完成 

编译完成后,编译好的固件在主文件夹/bin中,拷贝出来到自己要保存的文件夹中。以下命令是清理后以便于下次编译的。

清除缓存 make dirclean

彻底清理make distclean    或  make clean


编译单个包

编译一个单独的软件包(例如在cups软件包):

make package/cups/compile V=99


© 著作权归作者所有

4.Real
粉丝 4
博文 8
码字总数 2376
作品 0
沙坪坝
部门经理
私信 提问
Ubuntu 12.04下编译Openwrt教程 推荐

搭建编译环境 Ubuntu x64 12.04下的命令: sudo apt-get install subversion sudo apt-get install git sudo apt-get install flex sudo apt-get install g++ sudo apt-get install gawk su......

枫影Xda
2012/10/30
9.1K
1
新 FCC 可能禁止在 WiFi 路由器安装 OpenWRT

新的 FCC(美国联邦通讯委员会)规则可能会禁止在 WiFi 路由器安装 OpenWRT。 OpenWrt 类似于 Buildroot 的路由器固件,为嵌入式设备所研发的 Linux 发行版。目前 OpenWrt 已支持多个平台(如...

oschina
2015/07/29
11K
38
Hiwifi 刷 openwrt

参考地址: https://code.google.com/p/openwrt-hiwifi/ 极路由HC6361 OpenWrt固件补丁 (HiWiFi tw150v1) 说明 · OpenWrt官方源码自r40975起(2014/06/02)支持HC6361,本项目只做基于官方版...

老汉-憨憨
2015/01/11
10.8K
2
极路由4刷OpenWrt(LEDE)

申请开发者模式 登录路由器后台 进入插件中间 选中路由器信息 申请开发者权限 安装开发者插件 刷 Bootloader 下载 的 Breed 通过SSH登录路由器 (必须安装开发者插件,端口 账号 密码 ) 通过...

dingdayu
02/24
1K
0
OpenWrt系列教程汇总 & OpenWrt简体中文Wiki

OpenWrt系列教程汇总 OpenWrt简体中文Wiki 快速导航

AlphaJay
2011/07/26
42.6K
1

没有更多内容

加载失败,请刷新页面

加载更多

Experts say the weaker pound is drawing investors to the UK tech sector

UK tech companies secured a record £5.5bn in foreign investment in the first seven months of this year, research shows. This was more than the amount invested per capita in th......

wowloop
18分钟前
5
0
Add support for Android 9-patch images in BorderImage

The 9-patch image implementation in Qt Quick Controls 1 is an internal implementation detail of the Android style. It cannot handle .9.png image files out of the box, but takes ......

shzwork
23分钟前
4
0
c/c++日期时间处理函数小结

日期时间处理函数: 日期时间转为字符串 strftime/std::put_time 字符串解析成日期时间 strptime/std::get_time 时间结构转换:time_t->tm localtime:time_t->tm 时间结构转换:tm->time_t ...

chuqq
27分钟前
5
0
Apache Flink 进阶入门(二):Time 深度解析

前言 Flink 的 API 大体上可以划分为三个层次:处于最底层的 ProcessFunction、中间一层的 DataStream API 和最上层的 SQL/Table API,这三层中的每一层都非常依赖于时间属性。时间属性是流处...

大涛学长
28分钟前
3
0
创龙基于Xilinx Artix-7系列FPGA处理器

SOM-TLA7是一款由广州创龙基于Xilinx Artix-7系列FPGA自主研发的核心板,可配套广州创龙Artix-7开发板使用。核心板尺寸仅70mm*50mm,采用沉金无铅工艺的10层板设计,专业的PCB Layout保证信号...

Tronlong创龙
34分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部