以 Lean's OpenWrt source 為例
注意:
不要用 root 使用者 git 和編譯!!!
國內使用者編譯前最好準備好梯子
預設登陸 IP 192。168。1。1, 密碼 password
準備編譯系統
推薦使用的編譯系統環境:Ubuntu 18 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。5 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
下載 lede 原始碼
git clone https://github。com/coolsnowwolf/lede
進入 lede 目錄
cd lede
更新軟體包
。/scripts/feeds update -a。/scripts/feeds install -a
調整韌體引數
make menuconfig
下載 dl 庫(國內請儘量全域性科學上網)
make download V=s
開始編譯韌體(-j1 後面是執行緒數,第一次編譯推薦用單執行緒)
make -j1 V=s
二次編譯:
進入 lede 目錄
cd lede
更新 lede 原始碼
git pull
更新 FEEDS
。/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
編譯完成後輸出路徑:
/lede/bin/targets
進階玩法
生成差異配置,可用於 GitHub Actions 雲編譯 OpenWrt
。/scripts/diffconfig。sh > config。seed