Lean’s Openwrt编译过程
注意:
- 不要用 root 用户进行编译!!!
- 国内用户编译前最好准备好梯子
- 默认登陆IP 192.168.2.1 密码 password
- 首先装好 Ubuntu 64bit,推荐 Ubuntu 20.04 LTS x64
安装必备组件
命令行输入 sudo apt-get update
,然后输入
sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget curl swig rsync
开始编译
git clone https://github.com/coolsnowwolf/lede
命令下载好源代码,然后 **cd lede **进入目录
配置编译
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
之后进入如下界面,这实际上是一个配置界面,用来配置编译的配置,并不是编译的过程。
如果更新不成,执行 make distclean
命令恢复,重新执行更新和安装命令,直至更新100%成功。
进入Target System和Subtarget勾选需要编译的平台。
进入Target Images勾选你需要的固件格式等(img、vmdk等这里我保持默认,默认也够用了吧?)
进入LuCI–>Applications内选中你需要的插件
勾选完需要的东西就可以退回第一个界面保存退出,保存按默认的文件名称(.config
)保存即可,不需要修改。编译会根据.config的内容编译,恢复到初始配置删掉.config或者执行 make dirclean
,恢复到编译配置前的初始状态。
在编译的过程中,要下载一些组件什么的,如果你不翻墙,下载速度会非常慢,甚至下载不下来。
预下载
保存后执行以下命令
make -j8 download V=s
下载dl库(国内请尽量全局科学上网)
如果下载不成功,重复再下载或者把线程调低一点,直至成功
编译
make -j1 V=s
//第一次编译非常的慢,要花上一两个小时
如果更新不成,执行 make clean
命令恢复编译make前的初始状态,直至更新100%成功。
取得固件
cd bin/targets/bcm53xx/generic/
注:这个bin目录在源码的lede路径下,非根目录下的bin目录
整个编译过程如下图
二次编译
cd lede
git pull 同步更新大雕源码
/scripts/feeds update -a && ./scripts/feeds install -a
make defconfig
make -j8 download
make -j$(($(nproc) + 1)) V=s
如果需要重新配置:
rm -rf ./tmp && rm -rf .config
make menuconfig
make -j$(($(nproc) + 1)) V=s
编译完成后输出路径:bin/targets
增加luci-theme-argon最新主题
进入 openwrt/package/lean 或者其他目录
Lean源码
cd lede/package/lean
rm -rf luci-theme-argon
git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git
make menuconfig #choose LUCI->Theme->Luci-theme-argon
make -j1 V=s
Openwrt 官方源码
cd openwrt/package
git clone https://github.com/jerrykuku/luci-theme-argon.git
make menuconfig #choose LUCI->Theme->Luci-theme-argon
make -j1 V=s
常用修改
Modify default IP
sed -i 's/192.168.1.1/192.168.2.1/g' package/base-files/files/bin/config_generate
Modify default hostname
sed -i 's/OpenWrt/LEDE/g' package/base-files/files/bin/config_generate
Uncomment a feed source
#sed -i 's/^#\(.*helloworld\)/\1/' feeds.conf.default
sed -i '$a src-git kenzo https://github.com/kenzok8/openwrt-packages' feeds.conf.default
sed -i '$a src-git small https://github.com/kenzok8/small' feeds.conf.default
Replace luci-theme-argon
cd package/lean
rm -rf luci-theme-argon
git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git