openwrt固件编译教程

 时间:2024-10-12 14:32:06

1、搭建编译环境。编译建议在Linux下进行。我的系统是Linux mint 17,执行以下命令,构建编译环境:sudo apt-get updatesudo apt-get install git-core build-essential

2、获取openwrt源码。在当前用户主目录下执行git clone git://git.openwrt.org/openwrt.git等待代码下载。结束后,目录下会出现openwrt文件夹。

3、配置软件源。进入openwrt目录,执行./scripts/feeds update -a ./scripts/feeds install -a

4、检查编译环境是否完整:make defconfigmake prereq根据提示信息安装需要的软件包。如果提示类似“tmp/.config-package.in:22022:warning: multi-line strings not supported”的信息,打开 openwrt/tmp/.config-package.in,定位到对应行,添上丢掉的一个引号就可以了。

5、编译选项:执行 make menuconfig,根据路由器情况,选择 Target System 和 Subtarget。如意云一代和极壹S的 Target System 均为 Ralink RT288x/RT3xxx 。对于Subtarget ,前者为 MT7620n based boards ,后者为 MT7620a based boards。其他选项根据个人喜好选择。一般来说要选中LuCI界面,选中中文语言包等等。

6、开始编译:执行 make -j2 V=s 进行编译。-j后面的数字是电脑物理CPU数量加一。V=s可以显示出编译的详细信息。首次编译大概需要几个小时的时间。

7、错误排查:编译失败,一般有两种情况:1.代码下载链接失效。首次编译时,编译程序会实时从网上下载一些咻羿绅恐软件包的代码。如果下载链接失效,编译就会失败。这时需要根据软件包的名称,从网上自行下载,然后放在 openwrt/dl/ 目录下,执行 make -j2 V=s 继续编译即可。2.软件包自身有问题。这时重新执行 make menuconfig ,取消对应软件包选中即可。这种情况比较少见,目前已知的有 tor 等。编译成功,但没有生成固件。这种情况一般是因为选中的软件包过多,导致固件大小超过16MB。重新执行 make menuconfig,去掉一些软件包,重新执行编译即可。

8、得到固件。在排除了所有错误后,现在终于得到了固件。对于如意云RY-1,固件在 openwrt/bin/ramips 目录下,形如openwrt-ramips-mt7620n-rt-n14u-squashfs-sysupgrade.binopenwrt-ramips-mt7620n-wrtnode-squashfs-sysupgrade.binopenwrt-ramips-mt7620n-mlw221-squashfs-sysupgrade.binopenwrt-ramips-mt7620n-wr8305rt-squashfs-sysupgrade.bin等等。

openwrt固件编译教程
  • 飞报如何关闭手机号搜索
  • 怎么编辑手机rom中的build.prop
  • 如何修改双系统开机选择时间
  • win2000/xp/vista/win7/2008怎样更换盘符
  • 华为mate9怎么禁止MTP
  • 热门搜索
    万圣节手抄报英语 有关母亲节的手抄报 关于文明的手抄报内容 向国旗敬礼手抄报内容 小学生安全手抄报图 关于历史的手抄报 民族精神代代传手抄报 美丽家园手抄报内容 光盘行动手抄报 五年级数学手抄报内容