安装wsl的过程略过不表,开机后老规矩:更换源地址。
一些前序准备工作
sudo apt update -y sudo apt full-upgrade -y sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \ bzip2 ccache clang cmake cpio curl device-tree-compiler ecj fastjar flex gawk gettext gcc-multilib \ g++-multilib git gnutls-dev gperf haveged help2man intltool lib32gcc-s1 libc6-dev-i386 libelf-dev \ libglib2.0-dev libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5 \ libncursesw5-dev libpython3-dev libreadline-dev libssl-dev libtool lld llvm lrzsz mkisofs msmtp \ nano ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pip python3-ply \ python3-docutils python3-pyelftools qemu-utils re2c rsync scons squashfs-tools subversion swig \ texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev
开始拉取代码,老设备,特别拉了一个老版本
git clone -b openwrt-18.06 --single-branch --filter=blob:none https://github.com/immortalwrt/immortalwrt cd immortalwrt ./scripts/feeds update -a && ./scripts/feeds install -a make menuconfig make download -j8 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin make V=s -j$(nproc)
避坑指南
不单这个,也包括编辑其它家的路由固件,大家在编译过程主要是选择app。如果出现编译失败等问题,大概率是文件无法下载,不单是由于国内网络环境复杂,也有镜像服务器说不清的原因,或者源码拉取的方式就是没有自己直接下载快。这个坑主要体现在dl库下载,不同版本、不同型号使用的文件都不尽相同,大家在编译过程需要自行下载。
如果要重新编译的,也记得先把这个文件夹单独存下来
如果因为缺少文件无法继续编译的,可以直接找到缺失的的包,使用迅雷等工具下载。就是比较麻烦。在dl库中,标注有hash的应该是未完全下载。可以访问https://sources.immortalwrt.org/,找到对应的包逐个下载