openwrt全过程
整体过程可以分为环境准备,安装软件源,编译配置,编译四部分:
一.环境准备
这部分主要是安装一些openwrt配置和编译中需要使用到的包,注意不要用root用户!
1. 请使用一个非root用户来完成这些工作!
2. 这里的所有命令都在OpenWrt编译系统的根目录下运行(例如~/openwrt/trunk/
)
3. 编译系统的绝对路径中不能含有空格!
4. 如果你使用root用户下载了源码,请把你下载来的源码的所有者更改为一个非root用户。(sudo chown -R user:user /openwrt/
)
sudo apt-get update
sudo apt-get install git-core build-essential libssl-dev libncurses5-dev unzip
sudo apt-get install subversion mercurial
git clone git://git.openwrt.org/openwrt.git
sudo apt-get install gawk
二.安装软件源
这部分主要是更新安装feeds:
cd openwrt
./scripts/feeds update -a
./scripts/feeds install -a
注意,由于众所周知的原因,可能会获取不到资源,需要给bash配置代理,方法见我的另一篇日志传送门。
三.编译配置
这部分是运行make menuconfig,然后根据自己需要来配置。配置文件名称为.config,在ubuntu中是隐藏文件,可通过ls -a查看,执行cp .config my.config,可以方便查看。
四.编译
如果你在第二步用了代理,记得编译前删掉!否则会报错。
在openwert目录下执行命令:
make -j4 V=s
首次编译需要几个小时,不用多线程的话更慢。编译出的文件说明
编译后会生成两个文件,形如:
openwrt-ramips-mt7628-root.squashfs 文件系统
openwrt-ramips-mt7628-uImage.bin 内核
我的配置下,完整固件有两个版本,根据实际的芯片版本选择就好
openwrt-ramips-mt7628-wrtnode2p-squashfs-sysupgrade.bin
openwrt-ramips-mt7628-wrtnode2r-squashfs-sysupgrade.bin
软件包的编译方法:在openwrt目录下,执行make package/包名/compile V=s
可以得到ipk文件,软件包安装方法类似:
opkg install XXX.ipk
上一篇: atlas的编译全过程
下一篇: 【剑指offer】序列化二叉树(二叉树)