PS:要转载请注明出处,本人版权所有。
PS: 这个只是基于《我自己》的理解,
如果和你的原则及想法相冲突,请谅解,勿喷。
前置说明
本文作为本人csdn blog的主站的备份。(BlogID=017)
本文发布于 2016-05-31 11:50:56,现用MarkDown+图床做备份更新。blog原图已丢失,使用csdn所存的图进行更新。(BlogID=017)
环境说明
无
前言
无
编译Openwrt
- 第一步,使用git clone 下载openwrt-sourcecode.
git clone [email protected]:openwrt-mirror/openwrt.git
- 第二步,复制feeds.conf.default 到 feeds.conf,并修改你想要的包。
如我添加了8021x的认证包。
![rep_img](https://flyinskyin2013.github.io/ImageBed0/blogs/blog_idx_017/8021x.png)
- 第三步,更新需要的包,并安装(使用feeds脚本)
./scripts/feeds update -a
./scripts/feeds install -a
- 第四步,选择自自己的MCU-target(类似linux kernel 配置)
make menuconfig
- 为选择MCU系列
- 为选择MCU-Board
![rep_img](https://flyinskyin2013.github.io/ImageBed0/blogs/blog_idx_017/makemenu1.png)
- 在network中,选择加入的8021x认证包
![rep_img](https://flyinskyin2013.github.io/ImageBed0/blogs/blog_idx_017/makemenu2.png)
- 如果你有其他的配置,请自行根据需要选择。
- 退出保存.config
- 第五步,编译(make)
注意N为你计算机的cpu虚拟核数
make -j N
编译中的问题
注意在编译中会出一部分错误,大概是两类。
-
一为:缺少依赖,下面可以解决
解决办法:
sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversion libncurses5-dev ncurses-term zlib1g-dev
-
二为:自己添加包编译问题
解决办法:
去看你添加包的readme.md和google
编译输出
下面说说编译完了,有些什么东西,而我们要的在哪里?下图是编译完后,openwrt目录的变化,
![rep_img](https://flyinskyin2013.github.io/ImageBed0/blogs/blog_idx_017/out1.png)
下图是我们需要的openwrt固件,在bin/xxx/目录下
![rep_img](https://flyinskyin2013.github.io/ImageBed0/blogs/blog_idx_017/out2.png)
在bin/xxx/packages下,是所有的编译出来的ipk包。如下图我的8021x包的ipk包
![rep_img](https://flyinskyin2013.github.io/ImageBed0/blogs/blog_idx_017/out3.png)
在staging_dir下,是这个平台的lib,include文件,同时还有这个平台的交叉编译工具
最后,特别声明,刷机有风险,请各位谨慎。如果刷机出现任何问题,我不负任何责任(多查查资料多问问人)
后记
无
参考文献
无
![qrc_img](https://flyinskyin2013.github.io/ImageBed0/blogs/qrcode_for_wx_official_account.jpg)
PS: 请尊重原创,不喜勿喷。
PS: 要转载请注明出处,本人版权所有。
PS: 有问题请留言,看到后我会第一时间回复。