@byxiaoxie6 年前
05/28
11:26
编译环境参考官方要求: https://openwrt.org/docs/guide-developer/build-system/install-buildsystem
虚拟机系统 Ubuntu 16.04.5 硬盘80G 内存4G (ubuntu编译不可用root!)
系统安装好后开始安装编译环境和下载源代码
Ubuntu 12.04 LTS :
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
Master or HEAD (main development tree) :
sudo git clone https://git.openwrt.org/openwrt/openwrt.git
然后设置下文件权限 chown -R <组名>:<用户名> <目录> 如:sudo chown -R xiaoxie:xiaoxie openwrt/
然后 ./openwrt/scripts/feeds update -a 好了以后输入安装 ./openwrt/scripts/feeds install -a
开始编译 先进入目录 cd openwrt/ 然后 make menuconfig
选 Target System 进去后选择自己路由器的平台(我的是MTK所以我选MTK的平台)
Subtarget 选择MTK的型号我的是 MT7620
Target Profile 选择自己路由器的型号没有的话默认就可以了 (这里我选的是 Asus RT-N14u)
Target Images 镜像类型 选择你需要的类型
其他默认先不改 进去 LuCI 看看有什么需要的软件包 <M>编译软件包 [*]内置 选择好后一直 exit 退出就可以之后开始编译成固件 make V=99 单线程编译 make -j 12 V=99 12线程编译
编译出来后的固件路径:/home/xiaoxie/openwrt/bin/targets/ramips/mt7620
固件文件:CPU型号-设备名-sysupgrate.bin
编译出错解决方法:
错误信息: /home/xiaoxie/openwrt/include/toplevel.mk:216: recipe for target 'world' failed
解决方法:固件容量不足