Loading... > 因为工作需要需要,需要深入了解openwrt的相关知识,那么就从编译镜像开始吧。 <!--more--> ## 0. 准备工作 编译环境: Ubuntu 16.04 源码: [Github](https://github.com/garywangcn/bpi-r2_lede) ## 1. 开始干活 1. 首先,我们去到上面的github仓库里面下载源码,下载到我们的编译机里面。 2. 打开源码目录,执行`make menuconfig`看一下各种依赖库是否都安装好,理论上需要安装下述这些依赖:`gcc, binutils, bzip2, flex, python, perl, make, find, grep, diff, unzip, gawk, getopt, subversion, libz-dev and libc headers` 3. 我们更新下组建和包 ``` ./scripts/feeds update -a ./scripts/feeds install -a ```` 4. 修改下芯片信息就可以开始编译了,`make menuconfig`进行修改,`Target System>MediaTek Ralink ARM`,这里需要注意,我第一次编译没有注意这里,发现编译出来的不是我板子的芯片的,然后修改这里重新编译就好了。 5. 开始编译,第一次编译建议使用`make -j1 V=s`,虽然这会很慢,但是好排错(大神介绍的,我一次过的),确定没问题了,后面为了加快速度你可以使用`make -j4` ## 2. 生成文件 编译完成后,会在`build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-mediatek_32`目录下生成编译后的镜像文件: ``` mtk-bpi-r2-SD.img mtk-bpi-r2-EMMC.img ``` 另外还有一个文件也要注意一下,就是位于`bin/targets/mediatek/32/lede-mediatek-32-bananapi,bpi-r2-sysupgrade.tar`,这个文件可以用于系统升级。 有了镜像文件后,接下来我们就可以烧录镜像,开始使用openwrt了,至于如何烧录,win使用win32disk,ubuntu使用dd就行。后面再继续研究如何定制固件,添加自定功能,和一些特殊环境。 Last modification:March 26, 2019 © Allow specification reprint Like 0 If you think my article is useful to you, please feel free to appreciate