老毛子Padavan固件編譯筆記

固件說明

  • 默認(rèn)登陸IP:192.168.2.1

  • 默認(rèn)用戶名/密碼:admin/admin

  • 默認(rèn)wifi密碼:1234567890

  • 集成/取消新增插件請(qǐng)修改此文件: trunk/build_firmware_modify

  • 已適配除官方適配外的以下機(jī)型

  • MI-R3P(感謝群里emmmm適配,可能led控制有點(diǎn)問題,其它功能正常)
  • 京東云路由(文件來自Lintel) 編譯代碼: JDC-1
  • 歌華鏈(感謝群里Heaven適配與測(cè)試)編譯代碼: GHL
  • NEWIFI-D1
  • B70(感謝Untitled提供荒野無燈的適配文件)
  • JCG-AC856M(感謝群里的旅途中的我適配和測(cè)試,gpio值還未完全適配,但不影響使用)
  • JCG-AC836M(感謝群里的碧霄客修改和測(cè)試)
  • YK-L1(L1、L1C、L1W通刷)
  • PSG712
  • PSG1208
  • PSG1218
  • 5K-W20 (USB)
  • OYE-001 (USB)
  • NEWIFI-MINI (USB)
  • MI-MINI (USB)
  • MI-3 (USB)
  • MI-R3G (USB)
  • HC5661A
  • HC5761A (USB)
  • HC5861B
  • 360P2 (USB)
  • MI-NANO
  • MZ-R13
  • MZ-R13P
  • RT-AC1200GU (USB)
  • XY-C1 (USB)
  • WR1200JS (USB)
  • NEWIFI3 (USB)
  • B70 (USB)
  • A3004NS (USB)
  • K2P
  • K2P-USB (USB)
  • JCG-836PRO (USB)
  • JCG-AC860M (USB)
  • DIR-882 (USB)
  • DIR-878
  • MR2600 (USB)
  • WDR7300
  • RM2100
  • R2100

本地編譯

  • 安裝依賴包
# Debian/Ubuntu
sudo apt update
sudo apt install unzip libtool-bin curl cmake gperf gawk flex bison nano xxd fakeroot \
cpio git python-docutils gettext automake autopoint texinfo build-essential help2man \
pkg-config zlib1g-dev libgmp3-dev libmpc-dev libmpfr-dev libncurses5-dev libltdl-dev wget
?
# CentOS 7
sudo yum update
sudo yum install ncurses-* flex byacc bison zlib-* texinfo gmp-* mpfr-* gettext \
libtool* libmpc-* gettext-* python-docutils nano help2man fakeroot
sudo yum groupinstall "Development Tools"
?
# CentOS 8
sudo yum update
sudo yum install ncurses-* flex byacc bison zlib-* gmp-* mpfr-* gettext \
libtool* libmpc-* gettext-* nano fakeroot
sudo yum groupinstall "Development Tools"
# CentOS 8不能直接通過yum安裝texinfo媳维,help2man东跪,python-docutils茶袒。請(qǐng)去官網(wǎng)下載發(fā)行的安裝包編譯安裝
# 以texinfo為例
# cd /usr/local/src
# sudo wget http://ftp.gnu.org/gnu/texinfo/texinfo-6.7.tar.gz
# sudo tar zxvf texinfo-6.7.tar.gz
# cd texinfo-6.7
# sudo ./configure
# sudo make
# sudo make install
?
# Archlinux/Manjaro
sudo pacman -Syu --needed git base-devel cmake gperf ncurses libmpc gmp python-docutils \
vim rpcsvc-proto fakeroot
  • 克隆源碼

sudo git clone --depth=1 https://github.com/chongshengB/rt-n56u.git /opt/rt-n56u

  • 準(zhǔn)備工具鏈
cd /opt/rt-n56u/toolchain-mipsel
?
# (推薦)使用腳本下載預(yù)編譯的工具鏈:
sudo sh dl_toolchain.sh
?
# 或者划鸽,也可以從源碼編譯工具鏈冗恨,這需要一些時(shí)間:
# Manjaro/ArchLinux 用戶請(qǐng)使用gcc-8
# sudo pacman -S gcc8
# sudo ln -sf /usr/bin/gcc-8 /usr/local/bin/gcc
# sudo ln -sf /usr/bin/g++-8 /usr/local/bin/g++

sudo ./clean_toolchain
sudo ./build_toolchain
  • (可選) 自定義插件
cd /opt/rt-n56u/trunk
sudo nano build_firmware_modify      #用nano編輯build_firmware_modify文件
#將下圖中的插件自定義修改y/n尽棕,y是編譯喳挑,n是不編譯,修改好之后萄金,Ctrl+O保存蟀悦,Ctrl+X退出
2020-08-28 14-01-44.png
  • (可選) 修改機(jī)型配置文件
# cd /opt/rt-n56u/trunk/configs/templates/  #進(jìn)入此路徑
# ls  #查看所有型號(hào)路由器的配置文件
nano /opt/rt-n56u/trunk/configs/templates/RM2100.config    #RM2100.config為紅米AC2100路由器
# 根據(jù)自身情況。自行修改對(duì)應(yīng)的配置文件(可選)
  • 清理代碼樹并開始編譯
cd /opt/rt-n56u/trunk
sudo ./clear_tree
sudo fakeroot ./build_firmware_modify RM2100  #RM2100就是對(duì)應(yīng)型號(hào)路由器的配置文件名
# 腳本第一個(gè)參數(shù)為路由型號(hào)氧敢,在trunk/configs/templates/中
# 編譯好的固件在trunk/images里

云編譯

以C大的padavan自編譯項(xiàng)目

地址:https://github.com/chongshengB/Padavan-build

說明:現(xiàn)在不需要新建Release了日戈,已經(jīng)更改了腳本,直接fork孙乖,修改好之后浙炼,點(diǎn)擊右上角的 Star 星星按鈕即可開始自動(dòng)編譯(自己點(diǎn)擊才會(huì)編譯)。

首先你得有個(gè)github賬號(hào)(此處省略怎么注冊(cè))

  1. 瀏覽器進(jìn)入https://github.com/chongshengB/Padavan-build

  2. 點(diǎn)擊右上的Fork唯袄,就把這個(gè)項(xiàng)目Fork到自己的賬號(hào)下了

200622_141025
  1. 然后會(huì)自動(dòng)進(jìn)入自己賬號(hào)剛剛Fork的項(xiàng)目弯屈,點(diǎn)擊.guthub/workflows
    200622_141540
  2. 進(jìn)入到Padavan-build/.github/workflows/,點(diǎn)擊build-padavan.yml
    200622_141725
  3. 可以看到build-padavan.yml文件的內(nèi)容了恋拷,點(diǎn)擊右上的圖標(biāo)资厉,進(jìn)入編輯狀態(tài)

    200622_142046

  4. 根據(jù)第一行的提示內(nèi)容,找到TNAME: K2P-5.0蔬顾,把K2P-5.0改成你要編譯的型號(hào)(比如紅米AC2100對(duì)應(yīng)的是RM2100

    修改前
    修改后
  • 說明:怎么看不同機(jī)器的型號(hào)

    • 找到git clone --depth=1 https://github.com/chongshengB/rt-n56u.git /opt/rt-n56u這一行

    • 瀏覽器打開中間的網(wǎng)址(https://開頭.git結(jié)尾)https://github.com/chongshengB/rt-n56u.git

    • 依次進(jìn)入rt-n56u/trunk/configs/templates宴偿,這里面就是所支持編譯的所有機(jī)器型號(hào)(例如360P2.config文件湘捎,對(duì)應(yīng)的機(jī)器型號(hào)是360路由器P2,紅米AC2100就是RM2100.config窄刘,上面修改TNAME時(shí)窥妇,不需要.config后綴)

    200622_144540
  1. 自定義插件,具體看解釋娩践,很簡單
 sed -i 's/CONFIG_FIRMWARE_INCLUDE_OPENSSL_EXE=n/CONFIG_FIRMWARE_INCLUDE_OPENSSL_EXE=y/g' .config
 ################################################################################################
 #因不同型號(hào)配置功能不一樣活翩,所以先把配置項(xiàng)刪除,如果你自己要添加其他的翻伺,也要寫上刪除這一條材泄,切記!6至搿脸爱!
 ################################################################################################
 sed -i '/CONFIG_FIRMWARE_INCLUDE_MENTOHUST/d' .config #刪除配置項(xiàng)MENTOHUST
 sed -i '/CONFIG_FIRMWARE_INCLUDE_SCUTCLIENT/d' .config #刪除配置項(xiàng)SCUTCLIENT
 sed -i '/CONFIG_FIRMWARE_INCLUDE_SHADOWSOCKS/d' .config #刪除配置項(xiàng)SS plus+
 sed -i '/CONFIG_FIRMWARE_INCLUDE_SSSERVER/d' .config #刪除配置項(xiàng)SS server
 sed -i '/CONFIG_FIRMWARE_INCLUDE_DNSFORWARDER/d' .config #刪除配置項(xiàng)DNSFORWARDER
 sed -i '/CONFIG_FIRMWARE_INCLUDE_ADBYBY/d' .config #刪除配置項(xiàng)adbyby plus+
 sed -i '/CONFIG_FIRMWARE_INCLUDE_FRPC/d' .config #刪除配置項(xiàng)內(nèi)網(wǎng)穿透FRPC
 sed -i '/CONFIG_FIRMWARE_INCLUDE_FRPS/d' .config #刪除配置項(xiàng)內(nèi)網(wǎng)穿透FRPS
 sed -i '/CONFIG_FIRMWARE_INCLUDE_TUNSAFE/d' .config #刪除配置項(xiàng)TUNSAFE
 sed -i '/CONFIG_FIRMWARE_INCLUDE_ALIDDNS/d' .config #刪除配置項(xiàng)阿里DDNS
 sed -i '/CONFIG_FIRMWARE_INCLUDE_V2RAY/d' .config #刪除配置項(xiàng)v2ray
 sed -i '/CONFIG_FIRMWARE_INCLUDE_TROJAN/d' .config #刪除配置項(xiàng)trojan
 sed -i '/CONFIG_FIRMWARE_INCLUDE_WYYBIN/d' .config #刪除配置項(xiàng)網(wǎng)易云解鎖GO版本
 sed -i '/CONFIG_FIRMWARE_INCLUDE_ZEROTIER/d' .config #刪除配置項(xiàng)zerotier
 sed -i '/CONFIG_FIRMWARE_INCLUDE_SMARTDNS/d' .config
 sed -i '/CONFIG_FIRMWARE_INCLUDE_SRELAY/d' .config
 sed -i 's/CONFIG_FIRMWARE_INCLUDE_OPENSSL_EXE=n/CONFIG_FIRMWARE_INCLUDE_OPENSSL_EXE=y/g' .config
 ######################################################################
 #以下選項(xiàng)是定義你需要的功能(y=集成,n=忽略),重新寫入到.config文件
 ######################################################################
 echo "CONFIG_FIRMWARE_INCLUDE_MENTOHUST=n" >> .config #MENTOHUST
 echo "CONFIG_FIRMWARE_INCLUDE_SCUTCLIENT=n" >> .config #SCUTCLIENT
 echo "CONFIG_FIRMWARE_INCLUDE_SHADOWSOCKS=y" >> .config #SS plus+
 echo "CONFIG_FIRMWARE_INCLUDE_SSOBFS=n" >> .config # simple-obfs混淆插件
 echo "CONFIG_FIRMWARE_INCLUDE_SSSERVER=n" >> .config #SS server
 echo "CONFIG_FIRMWARE_INCLUDE_DNSFORWARDER=n" >> .config #DNSFORWARDER
 echo "CONFIG_FIRMWARE_INCLUDE_ADBYBY=y" >> .config #adbyby plus+
 echo "CONFIG_FIRMWARE_INCLUDE_FRPC=n" >> .config #內(nèi)網(wǎng)穿透FRPC
 echo "CONFIG_FIRMWARE_INCLUDE_FRPS=n" >> .config #內(nèi)網(wǎng)穿透FRPS
 echo "CONFIG_FIRMWARE_INCLUDE_TUNSAFE=n" >> .config #TUNSAFE
 echo "CONFIG_FIRMWARE_INCLUDE_ALIDDNS=y" >> .config #阿里DDNS
 echo "CONFIG_FIRMWARE_INCLUDE_SMARTDNS=y" >> .config #smartdns
 echo "CONFIG_FIRMWARE_INCLUDE_SMARTDNSBIN=y" >> .config #smartdns二進(jìn)制文件
 echo "CONFIG_FIRMWARE_INCLUDE_V2RAY=y" >> .config #集成v2ray執(zhí)行文件(3.8M左右)未妹,如果不集成,會(huì)從網(wǎng)上下載下來執(zhí)行空入,不影響正常使用
 echo "CONFIG_FIRMWARE_INCLUDE_TROJAN=y" >> .config #集成trojan執(zhí)行文件(1.1M左右)络它,如果不集成,會(huì)從網(wǎng)上下載下來執(zhí)行歪赢,不影響正常使用
 echo "CONFIG_FIRMWARE_INCLUDE_KOOLPROXY=y" >> .config #KP廣告過濾
 echo "CONFIG_FIRMWARE_INCLUDE_CADDY=y" >> .config #在線文件管理服務(wù)
 echo "CONFIG_FIRMWARE_INCLUDE_CADDYBIN=n" >> .config #集成caddu執(zhí)行文件(13M左右)化戳,如果不集成,會(huì)從網(wǎng)上下載下來執(zhí)行埋凯,不影響正常使用
 echo "CONFIG_FIRMWARE_INCLUDE_ADGUARDHOME=y" >> .config
 echo "CONFIG_FIRMWARE_INCLUDE_SRELAY=n" >> .config #可以不集成
 echo "CONFIG_FIRMWARE_INCLUDE_WYY=y" >> .config #網(wǎng)易云解鎖
 echo "CONFIG_FIRMWARE_INCLUDE_WYYBIN=y" >> .config #網(wǎng)易云解鎖GO版本執(zhí)行文件(4M多)注意固件超大小,不集成會(huì)自動(dòng)下載
 echo "CONFIG_FIRMWARE_INCLUDE_ZEROTIER=y" >> .config #zerotier ~1.3M
 #########################################################################################
 #自定義添加其它功能請(qǐng)參考源碼configs/templates/目錄下的config文件点楼。按照上面的格式添加即可
 #格式如下:
 #sed -i '/自定義項(xiàng)/d' .config
 #echo "自定義項(xiàng)=y" >> .config
 #########################################################################################
  1. 修改完成之后,點(diǎn)擊右上的Start commit白对,跳出小窗口點(diǎn)擊Commit changes

    200622_145845

  2. 提交之后掠廓,再點(diǎn)擊右上的Star,然后在點(diǎn)擊Action

    200622_150236
  3. 第一次云編譯需要點(diǎn)擊 I understand myworkflows , go ahead and enable them

200622_151131
  1. 如果還沒有編譯甩恼,在次點(diǎn)擊兩次Star蟀瞧,讓五角星變成黑色填充(文字變成Unstar),刷新網(wǎng)址条摸,就可以看到在編譯了
200622_150505
  1. 大概等20分鐘左右悦污,就會(huì)編譯完成,期間不用管钉蒲,可以干點(diǎn)其他事情切端,完成之后(用時(shí)21分27秒),點(diǎn)擊Build Padavan
200622_155503
  1. 點(diǎn)擊Padavan-packages下載到本地顷啼,解壓后得到的固件就是剛剛編譯的踏枣,之后就是刷機(jī)了
200622_155756

參考
https://github.com/chongshengB/Padavan-build
https://github.com/chongshengB/rt-n56u

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末昌屉,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子椰于,更是在濱河造成了極大的恐慌怠益,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,591評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瘾婿,死亡現(xiàn)場(chǎng)離奇詭異蜻牢,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)偏陪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門抢呆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人笛谦,你說我怎么就攤上這事抱虐。” “怎么了饥脑?”我有些...
    開封第一講書人閱讀 162,823評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵恳邀,是天一觀的道長。 經(jīng)常有香客問我灶轰,道長谣沸,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,204評(píng)論 1 292
  • 正文 為了忘掉前任笋颤,我火速辦了婚禮乳附,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘伴澄。我一直安慰自己赋除,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,228評(píng)論 6 388
  • 文/花漫 我一把揭開白布非凌。 她就那樣靜靜地躺著举农,像睡著了一般。 火紅的嫁衣襯著肌膚如雪清焕。 梳的紋絲不亂的頭發(fā)上并蝗,一...
    開封第一講書人閱讀 51,190評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音秸妥,去河邊找鬼滚停。 笑死,一個(gè)胖子當(dāng)著我的面吹牛粥惧,可吹牛的內(nèi)容都是我干的键畴。 我是一名探鬼主播,決...
    沈念sama閱讀 40,078評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼起惕!你這毒婦竟也來了涡贱?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,923評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤惹想,失蹤者是張志新(化名)和其女友劉穎问词,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體嘀粱,經(jīng)...
    沈念sama閱讀 45,334評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡激挪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,550評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了锋叨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片垄分。...
    茶點(diǎn)故事閱讀 39,727評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖娃磺,靈堂內(nèi)的尸體忽然破棺而出薄湿,到底是詐尸還是另有隱情,我是刑警寧澤偷卧,帶...
    沈念sama閱讀 35,428評(píng)論 5 343
  • 正文 年R本政府宣布豺瘤,位于F島的核電站,受9級(jí)特大地震影響听诸,放射性物質(zhì)發(fā)生泄漏炉奴。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,022評(píng)論 3 326
  • 文/蒙蒙 一蛇更、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赛糟,春花似錦派任、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至司倚,卻和暖如春豆混,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背动知。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評(píng)論 1 269
  • 我被黑心中介騙來泰國打工皿伺, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人盒粮。 一個(gè)月前我還...
    沈念sama閱讀 47,734評(píng)論 2 368
  • 正文 我出身青樓鸵鸥,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子妒穴,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,619評(píng)論 2 354