openwrt 开发外围准备工作:(零)编译openwrt固件
前言
在开发过程中我发现下载的固件里没有我需要的功能,因此我学习了一下自定义固件的相关操作。
本文将简单描述如何从零开始编译一个自己的固件。
我的固件需求是,x86,有luci,带串口驱动ch341,带rt3070驱动。
编译自定义固件是学习openwrt不可跳过的一个环节,切记!
准备编译工具
为了防止在编译过程中出现error说某种工具不足,先提前准备好相关内容。
注意: 后面的…OK类似的是我为了标记进度自己添加的,实际使用过程中应输入类似:sudo apt-get install g++
sudo apt-get install g++ 。。。OK
sudo apt-get install libncurses5-dev …OK
sudo apt-get install zlib1g-dev …OK
sudo apt-get install bison …OK
sudo apt-get install flex …OK
sudo apt-get install unzip …OK
sudo apt-get install autoconf …OK
sudo apt-get install gawk …OK
sudo apt-get install make …OK
sudo apt-get install gettext …OK
sudo apt-get install gcc …OK
sudo apt-get install binutils …OK
sudo apt-get install patch …OK
sudo apt-get install bzip2 …OK
sudo apt-get install libz-dev …OK
sudo apt-get install asciidoc …OK
sudo apt-get install subversion …OK
sudo apt-get install sphinxsearch …OK
sudo apt-get install libtool …OK
sudo apt-get install sphinx-common …OK
sudo apt-get install libssl-dev …OK
sudo apt-get install libssl0.9.8 …OK
sudo apt-get install git-core …OK
sudo apt-get install build-essential …OK
sudo apt-get install mercurial …OK
克隆所需源码
找一个空的文件夹,用非root模式打开,然后执行下面这个指令
git clone git://github.com/openwrt/openwrt.git
下载组件
承接上一步,进入目录
cd openwrt
然后进行组件下载和安装
./scripts/feeds update
./scripts/feeds update -a
./scripts/feeds install –a
注意有时候会出现组件下载不完全导致安装过程报错的情况,通常只需要重复以上的3行指令就可以解决。
到此如果能够没有error则可以进行下一步操作了
配置功能
目录不变,使用指令
make menuconfig
然后会开启一个界面,大致如下
需要关注的页面上半段: