數位天堂

Nokia:科技始終來自於人性; 拜耳:如果文明不能使我們更相愛,那科技便失去意義!
歡迎您的加入,讓我們一起討論科技與環保的整合應用...

您尚未登入。

#11 2010-04-26 18:00:58

Aven
天使
來自: 數位天堂
註冊日期: 2007-07-15
文章數: 2266
網站

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

參考 twtomato 及 hippo 兄編譯流程 thankgod

昨晚熬夜編譯的成果...我的 RT-N16 已經可以吃中文化番茄了。

蕃茄(Tomato)韌體版本1.27.0000 K26 USB VPN 中文化韌體
https://digiland.tw/uploads/2_tomato_127_k26_chinese.gif




技術問題請於論壇上集眾人之力公開討論,感恩 thankgod

離線

 

#12 2010-04-26 20:08:37

CQY
新生
註冊日期: 2009-11-11
文章數: 13
目前積分 :   

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

Aven 提到:

參考 twtomato 及 hippo 兄編譯流程 thankgod

昨晚熬夜編譯的成果...我的 RT-N16 已經可以吃中文化番茄了。

蕃茄(Tomato)韌體版本1.27.0000 K26 USB VPN 中文化韌體
https://digiland.tw/uploads/2_tomato_12 … hinese.gif

请问大大,这个蕃茄(Tomato)韌體版本1.27.0000 K26 USB VPN 中文化韌體
那里能下?



離線

 

#13 2010-04-26 20:36:47

hippo
天使
註冊日期: 2008-10-07
文章數: 1562
目前積分 :   20 

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

再次謝謝站長驗證流程, 也恭喜站長編譯成功. 不知站長是使用tar或git下載? 若使用git方式, 是否有顯示次版本? 也就是1.27.xxxx中的xxxx.

CQY 提到:

请问大大,这个蕃茄(Tomato)韌體版本1.27.0000 K26 USB VPN 中文化韌體
那里能下?

中文化這件事, 會牽涉一些版權問題. 建議自己動手編譯.


離線

 

#14 2010-04-26 23:45:26

Aven
天使
來自: 數位天堂
註冊日期: 2007-07-15
文章數: 2266
網站

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

hippo 提到:

再次謝謝站長驗證流程, 也恭喜站長編譯成功. 不知站長是使用tar或git下載? 若使用git方式, 是否有顯示次版本? 也就是1.27.xxxx中的xxxx.

CQY 提到:

请问大大,这个蕃茄(Tomato)韌體版本1.27.0000 K26 USB VPN 中文化韌體
那里能下?

中文化這件事, 會牽涉一些版權問題. 建議自己動手編譯.

我也是抓tar檔下來編譯的,無顯示次版本。
關於版權問題,我再跟 twtomato 詢問一下,希望還是透過既有的下載平台讓大家可以下載使用。



技術問題請於論壇上集眾人之力公開討論,感恩 thankgod

離線

 

#15 2010-05-30 22:29:45

hippo
天使
註冊日期: 2008-10-07
文章數: 1562
目前積分 :   20 

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

之前使用Git下載原始檔不順遂, 最近才好些. 補上git下載方式.

泰迪熊分別有tomato-ND-USBmod, tomato-RT二個程式庫, 分屬核心2.4, 2.6, 可分別建立二個目錄, 區分原始碼來源. 以下使用tomato-ND-USBmod舉例.

1. 安裝git相關套件後, 下載原始碼. 指定建立tomato-ND-USBmod目錄.

$ git clone git://repo.or.cz/tomato.git tomato-ND-USBmod Initialized empty Git repository in /home/hippo/Source/Tomato/TeddyBear/tomato-ND-USBmod/.git/ remote: Counting objects: 118773, done. remote: Compressing objects: 100% (64631/64631), done. remote: Total 118773 (delta 50094), reused 118773 (delta 50094) Receiving objects: 100% (118773/118773), 389.83 MiB | 81 KiB/s, done. Resolving deltas: 100% (50094/50094), done. warning: remote HEAD refers to nonexistent ref, unable to checkout.


2. 檢視分支

$ cd tomato-ND-USBmod $ git branch -r origin/Tomato-1.27-Toastman-RT origin/ipmac-limit origin/linksys origin/lzo origin/minidlna origin/ntfs-3g origin/openssl-AES origin/openvpn origin/p910nd origin/tomato origin/tomato-1.25-ND-RAF origin/tomato-1.25-ND-Toastman origin/tomato-1.25-RAF origin/tomato-1.27-ND-Toastman origin/tomato-1.27-RAF origin/tomato-1.27-Toastman-RT origin/tomato-FS-patches origin/tomato-K26-USB-patches origin/tomato-K26-WL origin/tomato-K26-kernel origin/tomato-K26-toolchain-upd origin/tomato-K26-usbmod-base origin/tomato-ND origin/tomato-ND-USBmod origin/tomato-ND-USBmod-VPN origin/tomato-ND-WL-4.150.10.29 origin/tomato-ND-WL-4.150.10.5 origin/tomato-ND-WL-4.158.4.0 origin/tomato-ND-fixes origin/tomato-ND-kernel-patches origin/tomato-ND-kernel-update origin/tomato-ND-speedmod origin/tomato-ND-usbmod-base origin/tomato-ND-usbmod-mix origin/tomato-ND-usbmod-mixvpn origin/tomato-ND-usbmod-vpn origin/tomato-RAF origin/tomato-RAF-USB origin/tomato-RT origin/tomato-USB-patches origin/tomato-bb-e2fsprogs origin/tomato-fixes origin/tomato-httpd-cgi origin/tomato-jffs1 origin/tomato-miniupnpd origin/tomato-misc origin/tomato-miscset origin/tomato-ray123 origin/tomato-sdhc origin/tomato-slodki origin/tomatovpn origin/tomatovpn-ND origin/vpngui origin/vsftpd


3. 下載tomato-ND-USBmod分支原始碼

$ git checkout -b tomato-ND-USBmod origin/tomato-ND-USBmod warning: You appear to be on a branch yet to be born. warning: Forcing checkout of origin/tomato-ND-USBmod. Checking out files: 100% (27692/27692), done. Branch tomato-ND-USBmod set up to track remote branch refs/remotes/origin/tomato-ND-USBmod. Switched to a new branch 'tomato-ND-USBmod'


4. 檢查

$ ls COPYING make_all.sh make.sh README.TXT release toolchain tools


好了, 有原始碼了. 我保持這個目錄內容不動, 若要編譯, 則將內容複製到別處, 中文化後, 再編譯.
5. 日後更新檢查

$ git pull remote: Counting objects: 36, done. remote: Compressing objects: 100% (16/16), done. remote: Total 17 (delta 11), reused 3 (delta 0) Unpacking objects: 100% (17/17), done. From git://repo.or.cz/tomato 094c2e3..7bfc102 tomato-ND-USBmod -> origin/tomato-ND-USBmod + 388037b...8bd1c7b tomato-RT -> origin/tomato-RT (forced update) Updating 094c2e3..7bfc102 Fast forward .../busybox/util-linux/volume_id/volume_id.c | 26 +++++-------------- 1 files changed, 7 insertions(+), 19 deletions(-)


版本顯示與svn不同, 不是全數字.

這是我目前對git的認識而採行的方法, 所以分存二個目錄, 但實際占用較多硬碟空間. 如果有更好方法能改善, 請指教.



離線

 

#16 2010-07-28 11:07:05

hippo
天使
註冊日期: 2008-10-07
文章數: 1562
目前積分 :   20 

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

泰迪熊或站長釋出的韌體, 若無法塞入flash memory, 例如: WRT54G, WHR-HP-G54等. 又或者需要更大的JFFS空間, 只得自己編譯.
相同功能的中文化韌體會比英文版韌體大一些. K26韌體也大於K24.

# make help a A build (standard) b B build (standard minus SSH) c C build (standard minus CIFS) d D build (standard minus Samba server) m M build (standard plus extra utilities and NTFS support) e E build (standard plus VPN, extra utilities and NTFS support) s S build (no USB support) f F build (no USB support minus JFFS and CIFS) v V build (VPN with no USB support) r2m MIPS Release 2 M build (standard plus extras) r2e MIPS Release 2 E build (standard plus VPN and extras) r2v MIPS Release 2 V build (VPN with no USB support) r2s MIPS Release 2 S build (no USB support) ...


MIPS R1(K24/K26) 有九種選擇; MIPS R2(K26) 可有十三種選擇?
例如, 泰迪熊釋出的tomato-K26-1.28.9048MIPSR2-beta18-Mini.rar, 應屬於F build, 檔名: xxx-Mini.trx(無MIPS R2機器, 無法驗證). 若使用K24 tomato-ND-USBmod編譯F build, 約2.6M.

所以, 先知道機器是否有USB, 是否需要USB, 再決定核心使用K24(tomato-ND-USBmod)或K26(tomato-RT), 再依需要的功能, 選擇不同的編譯參數作編譯. 依需要自行編譯後的韌體, 才有機會塞入flash memory.


離線

 

#17 2010-09-07 00:56:20

hippo
天使
註冊日期: 2008-10-07
文章數: 1562
目前積分 :   20 

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

以下的script是直接由tomato.git下載原始碼壓縮檔, 中文化, 編譯.

編譯環境的建立, 可參考twtomato的Tomato_WebGUI_Script081219.rar檔案內說明.

因原始碼壓縮檔約130MB, 使用aria2, 可多線下載. 若時常自行編譯韌體, 建議使用git方式.

解壓縮後, 參閱CHANGELOG, VERSION等說明.

因中文翻譯檔由twtomato經svn取得, 所以要自行安裝svn套件. 請參考這篇. 當然, 若不喜歡翻譯內容, 也可以自行修改.

指定/opt/brcm連結Toolchain, 需要root權限. 可先建立連結, 再由使用者執行script. 或直接由root執行.

編譯參數含版本號碼與韌體種類. 版本號碼有V1, V2, VPN; 韌體種類有a, b, c...r2m, r2e... 參考這篇. 例如: tomato-K26USB-1.28.9050MIPSR2-beta20-vpn3.6.trx, 則編譯參數為V1=9050 V2=-beta20 VPN=vpn3.6 r2e. 一次編譯流程, 可同時產生不同種類韌體.

#!/bin/sh echo "=============================================" echo "[1] 泰迪熊(K24) tomato-ND-USBmod" echo "[2] 泰迪熊(K26) tomato-RT" echo "[3] 土司超人(K24) tomato-1.28-Toastman-K24" echo "[4] 土司超人(K26) tomato-1.28-Toastman-RT" echo "=============================================" read -p "選擇衍生版本: " Choice case $Choice in 1) Branch=tomato-ND-USBmod ;; 2) Branch=tomato-RT ;; 3) Branch=tomato-1.28-Toastman-K24 ;; 4) Branch=tomato-1.28-Toastman-RT ;; *) echo "選擇錯誤!" exit 1 ;; esac read -p "下載原始碼(Y/n)? " Choice if [ "$Choice" = "Y" ]; then Source=http://repo.or.cz/w/tomato.git/snapshot/$Branch.tar.gz if [ -x /usr/bin/aria2c ]; then aria2c $Source else wget -c $Source fi fi read -p "解壓縮原始碼(Y/n)? " Choice if [ "$Choice" = "Y" ]; then [ -d tomato ] && rm -fr tomato/* [ -f $Branch.tar.gz ] && tar -xzvf $Branch.tar.gz fi doTranslate() { Folder=$LangFolder/$Name/$Lang if [ -d $Folder ]; then for File in `ls en_US/*.asp`; do sed -f $Folder/webui.sed $File > $Lang/$(basename $File) done for File in `ls en_US/*.js`; do sed -f $Folder/javascript.sed $File > $Lang/$(basename $File) done fi } read -p "中文化(Y/n)? " Choice if [ "$Choice" = "Y" ]; then Lang=zh_TW LangUrl=http://twtomato.googlecode.com/svn/trunk/digiland_tw LangFolder=twtomato-digiland_tw if [ -x /usr/bin/svn ]; then if [ -d $LangFolder/.svn ]; then cd $LangFolder svn up cd - else svn co $LangUrl $LangFolder fi else for Name in Tomato TeddyBear Toastman; do Folder=$LangFolder/$Name/$Lang [ -d $Folder ] || mkdir -p $Folder for File in webui.sed javascript.sed; do wget -c -P $Folder $LangUrl/$Name/$Lang/$File done done wget -c -P $LangFolder/Tomato/$Lang $LangUrl/Tomato/$Lang/svg.sed fi if [ -d en_US ]; then rm -f en_US/* else mkdir en_US fi if [ -d $Lang ]; then rm -f $Lang/* else mkdir $Lang fi WWW=tomato/release/src/router/www mv $WWW/*.asp en_US mv $WWW/*.js en_US mv $WWW/*.jsx en_US mv $WWW/*.svg en_US Name=Tomato doTranslate Folder=$LangFolder/$Name/$Lang if [ -d $Folder ]; then sed -f $Folder/javascript.sed en_US/status-data.jsx > $Lang/status-data.jsx for File in `ls en_US/*.svg`; do sed -f $Folder/svg.sed $File > $Lang/$(basename $File) done fi case $Branch in tomato-ND-USBmod | tomato-RT) mv -f $Lang/*.asp en_US mv -f $Lang/*.js en_US Name=TeddyBear doTranslate echo "泰迪熊中文化完成!" ;; tomato-1.28-Toastman-K24 | tomato-1.28-Toastman-RT) for Name in TeddyBear Toastman; do mv -f $Lang/*.asp en_US mv -f $Lang/*.js en_US doTranslate done echo "土司超人中文化完成!" ;; esac mv $Lang/* $WWW fi read -p "編譯(Y/n)? " Choice if [ "$Choice" = "Y" ]; then ln -sf $(pwd)/tomato/tools/brcm /opt/brcm PATH=/opt/brcm/hndtools-mipsel-linux/bin:/opt/brcm/hndtools-mipsel-uclibc/bin:$PATH case $Branch in tomato-ND-USBmod | tomato-1.28-Toastman-K24) cd tomato/release/src ;; tomato-RT | tomato-1.28-Toastman-RT) cd tomato/release/src-rt ;; esac make help read -p "輸入編譯參數: " Parameter make $Parameter ls -l image cd - fi


下載tomato.sh後, 變更為可執行.
若理解整個流程之後, 建議自行修改, 來符合自己的需求.

修改:
1. 變更土司超人來源檔案.
2. 可用wget下載.

tomato.git已不提供snapshot, 所以無法直接下載原始碼. 請用git.

最後修改: hippo (2011-02-26 01:13:52)


附件:
Attachment Icon tomato.sh, 大小: 3,282 bytes, 下載: 16

離線

 

#18 2010-09-19 13:39:28

Aven
天使
來自: 數位天堂
註冊日期: 2007-07-15
文章數: 2266
網站

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

颱風天好好研究一下
hippo 兄實在太厲害了,這 script 檔寫得一氣呵成 yes

因 r251 起:泰迪熊改回webui.sed, javascript.sed
附檔裡的 tomato.sh 會出現找不到 mod-webui.sed 及 mod-javascript.sed 的情形。

另外,最近編譯泰迪熊都不成功,土司超人則是OK的,不知道其他人有沒有遇到同樣問題?



技術問題請於論壇上集眾人之力公開討論,感恩 thankgod

離線

 

#19 2010-09-19 21:41:48

hippo
天使
註冊日期: 2008-10-07
文章數: 1562
目前積分 :   20 

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

站長謬讚了, 我只不過是把手橄麵變快餐罷了, 沒啥技巧可言.

因原先上傳的tomato.sh不能刪除, 而且土司超人的heads也時常變更合併, 所以就直接修改code內容, 提供參考. 理解流程之後, 就可自己修改tomato.sh. 目錄架構也一併在這篇修改說明.

近日發現中文sed檔, 除了使用svn下載, 也可直接下載. 例如:

$ wget http://twtomato.googlecode.com/svn/trunk/digiland_tw/Tomato/zh_TW/webui.sed


如此一來, Linux端就未必要安裝svn套件. 同樣的, 再自行修改tomato.sh內容.

泰迪熊版本是中文化後無法編譯, 還是英文原始碼就無法編譯? 原始碼是git下載, 還是snapshot下載?
K24版本, 我維持用Mandriva編譯; K26版本, 我得在Mandriva chroot到Debian, 才能編譯成功.
若在已編譯過的目錄內重新編譯, 可先make clean, 再執行編譯.


離線

 

#20 2010-09-20 00:38:53

Aven
天使
來自: 數位天堂
註冊日期: 2007-07-15
文章數: 2266
網站

Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試

我自己都是下載 snapshot 的壓縮檔解壓後再進行編譯
至於編譯錯誤問題,我只試過中文化後再編譯,make clean 也試過了

下次再試直接編譯看看會不會出現錯誤訊息。



技術問題請於論壇上集眾人之力公開討論,感恩 thankgod

離線

 

相關討論主題

主題 回覆 點閱 最後發表
置頂
置頂: Tomato 後續延伸版本 FreshTomato 作者 wen1977  [ 1 2 3 4 ]
33 86362 2024-10-23 08:28:27 作者 huiduo
置頂
置頂: [Tomato Shibby] 正體中文化韌體下載 作者 Aven  [ 1 2 3 … 163 ]
1625 3062538 2024-04-28 12:35:05 作者 s87311
Tomato Shibby v140 韌體更新 作者 Service  [ 1 2 3 … 16 ]
155 351013 2022-12-08 17:08:17 作者 dir868l
置頂
置頂: [精華] Tomato 網路資源及文章索引 作者 Aven  [ 1 2 3 … 6 ]
54 208568 2022-09-15 12:25:01 作者 chiachu
222 506914 2022-09-14 14:54:52 作者 chiachu

友情連結

論壇頁尾

Powered by PunBB
© Copyright 2018 Rickard Andersson
RSS Feed