OpenWrt的特点:
- 可扩展性好,可以在线安装您所需要的功能,目前有1000多个功能包可选;
- 是一台完整的Linux工作站,文件系统可读可写,便于开发者学习和实践。
一:搭建编译环境
1、安装Ubuntu(编译需要Linux环境),到其官网下载,版本根据自己所需选择即可。可以选择安装到虚拟机或者物理机,图形化安装而且是中文版,连安装都搞不定的,可以关闭本页面了;
2、切记不要改动软件源,同时按住Ctrl + Alt + T,调出终端;
3、逐条输入下列命令(及时验证是否安装成功):
1 sudo apt-get update 2 sudo apt-get install net-tools #安装ifconfig 3 sudo apt-get install inetutils-ping #安装 ping 4 sudo apt-get install vim 5 sudo apt-get install gcc 6 sudo apt-get install wget 7 sudo apt-get install g++ 8 sudo apt-get install libncurses5-dev 9 sudo apt-get install patch 10 sudo apt-get install bzip2 11 sudo apt-get install make 12 sudo apt-get install gettext 13 sudo apt-get install textinfo 14 sudo apt-get install unzip 15 sudo apt-get install libz-dev 16 sudo apt-get install binutils 17 sudo apt-get install flex 18 sudo apt-get install bison 19 sudo apt-get install autoconf 20 sudo apt-get install sharutils 21 sudo apt-get install subversion 22 sudo apt-get install ncurses-term 23 sudo apt-get install zlib1g-dev 24 sudo apt-get install git-core 25 sudo apt-get install gawk 26 sudo apt-get install asciidoc 27 sudo apt-get install pthread* 28 sudo apt-get install libdbus* 29 sudo apt-get install glibc-doc 30 sudo apt-get install manpages-posix manpages-posix-dev 31 sudo apt-get install sphinxsearch 32 sudo apt-get install libtool 33 sudo apt-get install sphinx-common 34 sudo apt-get install libssl-dev 35 sudo apt-get install libssl0.9.8
至此编译环境搭建完成。
二:下载OpenWrt源码并编译
OpenWrt源码分两种,
Trunk开发版:最新但不是最稳定的;
Backfire版:最稳定
建议下载官方源码。下载前先在本地创建文件夹:
mkdir openwrt
sudo chmod 777 openwrt
cd openwrt
选择你想要的版本然后执行下载命令,下载结束会显示版本号:
Trunk版下载命令:
svn co svn://svn.openwrt.org/openwrt/trunk/
Backfire版下载命令:
svn co svn://svn.openwrt.org/openwrt/branches/backfire/
添加软件扩展包,将feeds.conf.default修改为feeds.conf:
cp feeds.conf.default feeds.conf
更新扩展,安装扩展:
./scripts/feeds update -a
./scripts/feeds install -a
注:如果不是刚下载的源码,为保持代码为最新状态,应定期运行svn update命令更新源码。
测试编译环境:
make defconfig
到这里就可以开始编译自己的固件了。进入定制界面:
make menuconfig
如果一切正常,会出现一个配置菜单,可以选择要编译的固件平台(芯片类型)、型号,还能选择固件中要添加的功能和组件,配置好后保存并退出菜单即可。
开始编译:
make
或者
make V=99
或者
make -j V=99
make是编译命令,V=99表示输出debug信息,V一定要大写,如果要让CPU全速编译,就加上 -j 参数,第一次编译最好不带-j参数。