1.openwrt编译流程
2.å¦ä½ç¼è¯OpenWrt
openwrt编译流程
编译OpenWRT源码至Ubuntu下,码目需先进入OpenWRT根目录。码目通常,码目简单操作为执行命令make V=。码目currports 源码若系统为多核处理器,码目为加速编译过程,码目可添加-j选项,码目如make –j3 V=。码目在编译过程中,码目系统将自动下载所需软件包,码目请确保网络畅通。码目斗驴影视源码若在编译时遇到下载失败,码目可先执行make download指令,码目提前下载所需包,码目以避免后续错误。码目
初次编译耗时较长,垃圾回收器源码且需下载大量源码包,建议使用较好的***,以加速过程。完成编译后,会在源码目录中生成一个名为bin的以太小丑源码文件夹,其中包含两个文件:openwrt-ramips-rtx-wrn-squashfs-factory.bin 和 openwrt-ramips-rtx-wrn-squashfs-sysupgrade.bin。根据路由器的原始固件或已安装的OpenWRT版本,选择相应的固件进行刷写。
在编译过程中,掌握一些技巧有助于提升效率。spring orm源码分析例如,执行make clean可以清理基本编译文件,make dirclean则会深度清理文件,相当于执行make clean后再清除交叉编译工具链目录。使用make distclean则会清除所有相关东西,包括下载的软件包、配置文件及feed内容等。在个人开发中,常遇menuconfig无法更新问题,可通过删除tmp缓存目录解决。预先下载软件包,再执行编译的make download V=方法同样有效。最后,删除.config文件以清空所有配置。
å¦ä½ç¼è¯OpenWrt
æ建ç¼è¯ç¯å¢ãç¼è¯å»ºè®®å¨Linuxä¸è¿è¡ãæçç³»ç»æ¯Linux mint ï¼æ§è¡ä»¥ä¸å½ä»¤ï¼æ建ç¼è¯ç¯å¢ï¼
sudo apt-get update
sudo apt-get install git-core build-essential
è·åopenwrtæºç ãå¨å½åç¨æ·ä¸»ç®å½ä¸æ§è¡
git clone git://git.openwrt.org/openwrt.git
çå¾ ä»£ç ä¸è½½ãç»æåï¼ç®å½ä¸ä¼åºç°openwrtæ件夹ã
é 置软件æºãè¿å ¥openwrtç®å½ï¼æ§è¡
./scripts/feeds update -a
./scripts/feeds install -a
æ£æ¥ç¼è¯ç¯å¢æ¯å¦å®æ´ï¼
make defconfig
make prereq
æ ¹æ®æ示信æ¯å®è£ éè¦ç软件å ãå¦ææ示类似
âtmp/.config-package.in::warning: multi-line strings not supportedâ
çä¿¡æ¯ï¼æå¼ openwrt/tmp/.config-package.inï¼å®ä½å°å¯¹åºè¡ï¼æ·»ä¸ä¸¢æçä¸ä¸ªå¼å·å°±å¯ä»¥äºã
ç¼è¯é项ï¼
æ§è¡ make menuconfigï¼æ ¹æ®è·¯ç±å¨æ åµï¼éæ© Target System å Subtargetãå¦æäºä¸ä»£åæ壹Sç Target System å为 Ralink RTx/RT3xxx ã对äºSubtarget ï¼åè 为 MTn based boards ï¼åè 为 MTa based boardsã
å ¶ä»éé¡¹æ ¹æ®ä¸ªäººå好éæ©ãä¸è¬æ¥è¯´è¦éä¸LuCIçé¢ï¼éä¸ä¸æè¯è¨å ççã
å¼å§ç¼è¯ï¼
æ§è¡ make -j2 V=s è¿è¡ç¼è¯ã-jåé¢çæ°åæ¯çµèç©çCPUæ°éå ä¸ãV=så¯ä»¥æ¾ç¤ºåºç¼è¯ç详ç»ä¿¡æ¯ãé¦æ¬¡ç¼è¯å¤§æ¦éè¦å 个å°æ¶çæ¶é´ã
é误ææ¥ï¼
ç¼è¯å¤±è´¥ï¼ä¸è¬æ两ç§æ åµï¼
1.代ç ä¸è½½é¾æ¥å¤±æãé¦æ¬¡ç¼è¯æ¶ï¼ç¼è¯ç¨åºä¼å®æ¶ä»ç½ä¸ä¸è½½ä¸äºè½¯ä»¶å ç代ç ãå¦æä¸è½½é¾æ¥å¤±æï¼ç¼è¯å°±ä¼å¤±è´¥ãè¿æ¶éè¦æ ¹æ®è½¯ä»¶å çå称ï¼ä»ç½ä¸èªè¡ä¸è½½ï¼ç¶åæ¾å¨ openwrt/dl/ ç®å½ä¸ï¼æ§è¡ make -j2 V=s 继ç»ç¼è¯å³å¯ã
2.软件å èªèº«æé®é¢ãè¿æ¶éæ°æ§è¡ make menuconfig ï¼åæ¶å¯¹åºè½¯ä»¶å éä¸å³å¯ãè¿ç§æ åµæ¯è¾å°è§ï¼ç®åå·²ç¥çæ tor çã
ç¼è¯æåï¼ä½æ²¡æçæåºä»¶ãè¿ç§æ åµä¸è¬æ¯å 为éä¸ç软件å è¿å¤ï¼å¯¼è´åºä»¶å¤§å°è¶ è¿MBãéæ°æ§è¡ make menuconfigï¼å»æä¸äºè½¯ä»¶å ï¼éæ°æ§è¡ç¼è¯å³å¯ã
å¾å°åºä»¶ãå¨æé¤äºææé误åï¼ç°å¨ç»äºå¾å°äºåºä»¶ã对äºå¦æäºRY-1ï¼åºä»¶å¨ openwrt/bin/ramips ç®å½ä¸ï¼å½¢å¦
openwrt-ramips-mtn-rt-nu-squashfs-sysupgrade.bin
openwrt-ramips-mtn-wrtnode-squashfs-sysupgrade.bin
openwrt-ramips-mtn-mlw-squashfs-sysupgrade.bin
openwrt-ramips-mtn-wrrt-squashfs-sysupgrade.bin
ççã