之前成功编译出来openwrt的img固件,现在进一步学习,编译一个基于x86cpu的镜像,并用vm跑起来,自己学着先配置一下
1.更新openwrt
./scripts/feeds update -a
2.更新完成后,安装需要的更新依赖包
/scripts/feeds install -a
看到网上说有的需要把LUCI编译进内核,之前没有接触过,不知道是什么,查了一下,是路由器web的配置界面(基于LUA脚本),这样就不需要命令行配置了,现在路由器基本都是这种做法
3在内核编译中加入luci的命令:
./scripts/feeds update packages luci
./scripts/feeds install -a -p luci
运行这两条命令后,在编译内核的时候才会出现LUci的选项
4编译配置
make menuconfig
1. Target System (x86) ---> (X) x86 (虚拟机vm要运行,必须x86选项)
2. 配目标文件系统为 EXT2
Target Images ---> [*] ext4
Target Images ---> [*] Build VMwareimage files (VMDK)
编译成vm能认识的可以直接在vm上运行的虚拟硬盘接下来配置web 管理的UI界面
3配 Web UI :
1) Base system ---> uci................ Utility for the UnifiedConfiguration Interfa
2) LuCI都选上
3) Network --->
uhttpd........................ uHTTPd -tiny, single threaded HTTP server --->
uhttpd-mod-lua... uHTTPd - tiny, singlethreaded HTTP server (Lua plugin)
5编译make -j4 V=99
中间出错了,error: ext4_allocate_best_fit_partial: failed to allocate 720 blocks, out of space?
是因为我编译进去的东西太多,导致root filesystem partition size不够用,重新配置
make menuconfig
Target Images
Root filesystem partition size (in MB)
将默认的48改成96,重新编译,成功
转自 http://blog.csdn.net/zxygww/article/details/24802443