#21 2010-09-22 22:59:05
Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試
今晚git pull後, 再將泰迪熊版本, 未中文化, 重新編譯測試.
tomato-ND-USBmod, toolchain連結錯誤, 無v4.1.2, 需要自行修改為v4.2.4.
# ls -l tools/brcm/
drwxr-xr-x 3 admin administ 4096 Sep 22 17:58 K24/
lrwxrwxrwx 1 admin administ 32 Jun 16 09:38 hndtools-mipsel-linux -> K24/hndtools-mipsel-uclibc-4.1.2@
lrwxrwxrwx 1 admin administ 32 Jun 16 09:38 hndtools-mipsel-uclibc -> K24/hndtools-mipsel-uclibc-4.1.2@
# ls -l tools/brcm/K24/
drwxr-xr-x 12 admin administ 4096 Sep 22 17:59 hndtools-mipsel-uclibc-4.2.4/
K24, K26都能順利完成編譯.
離線
#23 2011-01-23 23:20:04
Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試
編譯版本差異, 參考: Build Features Cross-reference
新增 K26 only, for 8MB flash
t T build (no USB support with extra utilities)
u U build (no USB support with VPN and extra utilities)
最後修改: hippo (2011-01-27 13:09:04)
離線
#25 2011-06-11 09:53:25
Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試
在由遠端tomato.git更新原始碼(git pull)過程中, 可能會遇上與本機原始碼(之前下載的舊版本)發生衝突, 而無法自動合併. 可手動解決衝突; 或砍掉舊程式碼目錄, 重新下載整個原始碼. 不過, 重新下載太浪費時間了. 以下使用Toastman-ND舉例, 手動解決衝突.
1. 更新Toastman-ND原始碼
$ git pull
remote: Counting objects: 498, done.
remote: Compressing objects: 100% (163/163), done.
remote: Total 333 (delta 285), reused 197 (delta 168)
Receiving objects: 100% (333/333), 40.87 KiB, done.
Resolving deltas: 100% (285/285), completed with 66 local objects.
From git://repo.or.cz/tomato
+ 6779c96...7e89010 Toastman-ND -> origin/Toastman-ND (forced update)
+ 15bcd0e...53e5a65 Toastman-RT -> origin/Toastman-RT (forced update)
20fee0d..495c382 Tomato-RAF -> origin/Tomato-RAF
31efdb5..5effcfa Transmission -> origin/Transmission
e40df1a..582df98 tomato-shibby -> origin/tomato-shibby
* [new tag] Toastman-1.28.7475.4 -> Toastman-1.28.7475.4
* [new tag] Toastman-1.28.7621.2 -> Toastman-1.28.7621.2
From git://repo.or.cz/tomato
* [new tag] Toastman-1.28.7475.3 -> Toastman-1.28.7475.3
Auto-merging release/src/Makefile
CONFLICT (content): Merge conflict in release/src/Makefile
Auto-merging release/src/router/httpd/tomato.h
CONFLICT (content): Merge conflict in release/src/router/httpd/tomato.h
Auto-merging release/src/router/rc/nocat.c
CONFLICT (add/add): Merge conflict in release/src/router/rc/nocat.c
Auto-merging release/src/router/rc/services.c
CONFLICT (content): Merge conflict in release/src/router/rc/services.c
Auto-merging release/src/router/www/splash.html
CONFLICT (add/add): Merge conflict in release/src/router/www/splash.html
Automatic merge failed; fix conflicts and then commit the result.
總共五個程式衝突(CONFLICT), 無法自動合併.
2. 比對衝突的程式碼. 以release/src/router/www/splash.html舉例.
$ git diff
...(前四個程式省略)
diff --cc release/src/router/www/splash.html
index 3a50abf,e3ea764..0000000
--- a/release/src/router/www/splash.html
+++ b/release/src/router/www/splash.html
@@@ -106,15 -106,21 +106,33 @@@ h1 a { font-size: 16px;
++<<<<<<< HEAD
+
+
+You are solely responsible for any illegal activity once you click the 'AGREE' button.
+
+P2P is not allowed through this access point, please use it for Internet navigation only.
+The name of this Gateway is: $GatewayName. Please tell your friends!
+
+This banner will appear again when your allocated time has expired. To renew your time, you must agree again to these conditions.
++=======
+
+ The owner of this Internet Gateway provides this service on these conditions:
+
+ You are solely responsible for any illegal activities once you click the "OK, I AGREE" button.
+
+ We are not responsible for faulty operation of your computer or equipment. You may be asked to stop using your equipment if it causes interference to other residents.
+
+ A service charge will be made if you require assistance to connect to our routers.
+
+ This banner will appear again periodically.
+
+ To renew your access time, you must agree once again to these conditions.
+
+ Thank You, and Enjoy !
+
++>>>>>>> 7e890109d6c893851ae3172deb15c89a646612d3
程式碼差異區塊可以這樣看:
<<<<<<< HEAD
本機程式碼
=======
遠端程式碼
>>>>>>> 代號
如上, release/src/router/www/splash.html 總共有二個區塊的程式碼不同.
如果不放心, 當然可到tomato.git, Toastman-ND, 一層層往下到splash.html查看比對.
3. 刪除本機舊程式碼區塊
$ vi release/src/router/www/splash.html
命令列: 搜尋<<<<<<< HEAD
/<<<<<<< HEAD
按Enter搜尋後, 進入編輯區, 連續按dd, 可刪除整行.
<<<<<<< HEAD (刪除)
舊程式碼 (刪除)
======= (刪除)
新程式碼 (保留)
>>>>>>> 代號 (刪除)
二個差異區塊都處理完畢後, 命令列: 存檔離開.
:x
若不需要備份檔, 可刪除.
$ rm release/src/router/www/splash.html~
同理, 再分別處理release/src/Makefile, release/src/router/httpd/tomato.h, release/src/router/rc/nocat.c, release/src/router/rc/services.c等四個檔案.
4. 合併
$ git commit -a
Merge branch 'Toastman-ND' of git://repo.or.cz/tomato into Toastman-ND
Conflicts:
release/src/Makefile
release/src/router/httpd/tomato.h
release/src/router/rc/nocat.c
release/src/router/rc/services.c
release/src/router/www/splash.html
...(說明省略)
命令列: 離開
:q
5. 試試再更新
$ git pull
Already up-to-date.
離線
#26 2012-09-06 16:05:24
Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試
hippo 提到:
以下的script是直接由tomato.git下載原始碼壓縮檔, 中文化, 編譯.
……(恕刪)
請問這個中文化腳本是不是要修改才能適用於現在的版本?
除了程式碼改用 git 取得外,底下的流程是否都要更改?
不知道 hippo 兄有沒有時間幫忙改一下或是提示一下大概要怎麼改?
我的程式碼取得與存放目錄是參考教學步驟操作的,具體如下,
底下我是在使用者目錄(/home/user)下並以 root 執行的!
mkdir tomato_git
cd tomato_git
git clone git://repo.or.cz/tomato.git
tar zcvf tomato_git.tar.gz ./tomato
cd tomato
git checkout -b Toastman-RT-jya origin/Toastman-RT-jya
cd release/src-rt
make V1=XXXX V2=Toastman-RT r2j
離線
#28 2013-11-01 22:08:48
Re: [Tomato USB] v1.27.8745 ND vpn3.6 編譯測試
$ file /opt/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/mipsel-linux-uclibc-gcc-4.2.4
/opt/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/mipsel-linux-uclibc-gcc-4.2.4: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=830ece783ed4ad8bf9b709dd4d39e76a564b2a5d, stripped
tomato-shibby的Cross Toolchain已改為64位元, 所以要64位元的Linux OS才能交叉編譯了.
離線
相關討論主題
主題 | 回覆 | 點閱 | 最後發表 |
---|---|---|---|
置頂 |
33 | 85113 | 2024-10-23 08:28:27 作者 huiduo |
置頂 |
1625 | 3031516 | 2024-04-28 12:35:05 作者 s87311 |
|
155 | 348113 | 2022-12-08 17:08:17 作者 dir868l |
置頂 |
54 | 207361 | 2022-09-15 12:25:01 作者 chiachu |
|
222 | 502744 | 2022-09-14 14:54:52 作者 chiachu |