openwrt编译x86固件

x86 openwrt固件编译

2017年十月四日我在珠海,中秋之际写下这篇文章,祝各位看官花好月圆,有情人终成眷属。

最近一直在玩Openwrt,以前上学的时候接触一丁丁,但是只限于烧写别人编译好的固件,这次要真刀实干了,学习了一周各种百度,终于在虚拟机中把openwrt跑起来了,写下此篇留念,后续将会陆续更新。

  • 开发环境的安装
  • Openwrt的准备
  • openwrt配置编译
  • 编译openwrt

开发环境的安装

openwrt的内核是Linux内核,所以整个开发是基于Linux平台上的开发,因为我们大多数人使用的是windows系统,我选择使用虚拟机来安装Linux系统。单击下面的链接即可以下载VM

此时还需要一个Linux镜像文件,单击下载Linux
Linux的安装过程我就不详细说了,安装完成的界面如下图所示《建议配置》:
这里写图片描述

这里写图片描述


进如Ubuntu桌面,按住ctr+alt+T进入命令行模式,至此虚拟机搭建完成。
这里写图片描述


Openwrt的准备

首先需要下载Openwrt的源代码,SVN已经停用了,现在只能够从git上获取源代码。再此之前你需要为Ubuntu安装更新先输入 sudo apt-get update 输入密码,再输入 sudo apt-get upgrade 直到安装更新完成!
这里写图片描述

接下来要获取源码了,首先需要安装必要的支持库,以及支持的各种依赖包
sudo apt-get install build-essential subversion git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl mercurial bzr ecj cvs unzip

这是很多条命令,建议一条一条的输入,方面查找错误。官网参考

接下来下载Openwrt源码:
在当前用户目录下输入
mkdir openwrt
创建openwrt文件夹
输入 cd openwrt
进入openwrt文件夹

输入命令(以下命令均用非管理员权限):
git clone https://github.com/openwrt/openwrt.git
获取Openwrt源码!等待结束!
这里写图片描述
因为我已经有openwrt目录了,所以我用op文件夹演示!

输入 ls ,查看op目录下,有openwrt文件夹,你们的应该是在openwrt目录下有一个openwrt文件夹,内部的这个文件夹就是源码包!
输入
cd openwrt
切换至openwrt目录,
输入 ls命令,文件夹组成如下:
这里写图片描述

现在更新源码包!

./scripts/feeds update -a
这里写图片描述

安装feeds更新,更新呢完成之后输入下一跳命令安装,假如你不安装的话就没有第三方源码包给你选了!
./scripts/feeds install -a
这里写图片描述
安装更新之后,输入
make defconfig
检查编译前的环境

这里写图片描述

好了,现在可以来配置编译了!
输入 make menuconfig

这里写图片描述

targetsystem选择x86,target img选择生成 vbox或者vmware镜像文件,我都选了,嘻嘻!
这里写图片描述
好了,现在保存退出。
下面就是见证奇迹的时刻了!

No ,差点忘了还要把luci配置进去
luci>collection>下面的都选中!
luci>aplycation下面选中 luci-app-uhttpd……………………… uHTTPd Webserver Configuration
(其实target imge里面那些你都可以试一试,target profile 选择默认的吧,我没选,你可以试一下要不要选择成X86_x64,我想选了应该没影响)
好了,保存退出!

编译openwrt

编译,输入
make V=99
当然还有其他的一些命令,我就不详细说明了,那些大牛已经有非常详细说明啦!
慢慢等着吧,快的半个小时,慢的等到你怀疑人生!
编译成功会生成镜像: openwrt-x86-generic-combined-ext4.vmdk
那个ext4指的是文件系统,看你是选择了那个文件系统!


不足之处还请指正!
参考博文一
参考博文二
参考博文二

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值