網樂通編譯環境 - 改機

Table of Contents

前言:
網樂通PK7105的架構不賴,但很可惜內建的程式套件少得可憐所以要跑自己想
要的程式,例如 FTP伺服器、HTTP伺服器都要自己抓原始碼移植,這個移植的
動作需要建立Cross-Compile 環境,然而官方網站上的資訊有點過時所以按照
網站上的說明很可能還是會遇到錯誤,我把整個架設環境的流程寫一下,避免
有需要的人不小心走了冤枉路浪費時間。

事前準備:
首先需要一個標準的 Linux環境,在 Linux環境裡面套件管理分兩大陣營,分
別是Debian的dpkg/apt-get與RedHat的rpm/yum ,網樂通裡面跑的STLinux 屬
於後者,而很多無線AP裡面跟JB過的iPhone裡面則是跑前者。

當然選擇原生支援rpm/yum 的 Linux系統如RedHat或是Fedora會簡單一點,但
其實選擇Debian或Ubuntu也只多一兩個步驟而已,個人兩種平台都試過了,最
後還是決定用熟悉的Ubuntu 10.10 AMD64。cygwin應該不行,裡面只有rpm 沒
有yum ,而且缺很多東西,所以放棄。

再來是情況你要準備帶有DHCP伺服器的網路環境,為了避免弄壞最好也準備一
下USB2TTL 傳輸線,拿CA-42 傳輸線來改是最簡單的。

環境設定:
http://www.stlinux.com/faq?q=node/361
先跑完Ubuntu所有的更新然後啟動終端機程式輸入指令

host% sudo apt-get install bash

這個應該會回說已經最新版了,所以沒有安裝任何東西

host% sudo dpkg-reconfigure dash

這個選擇「否/No 」就好

host% sudo apt-get install rpm yum

系統會自動把那兩個程式裝好

網樂通是用STLinux-2.3 ,儘管2.4 也已經發布,還是先裝2.3 。

host% wget http://www.stlinux.com/sites/default/files/
stlinux23-host-STLinux_deps-0.1-5.i386.rpm (請貼成一行)

host% sudo rpm -ivh --force-debian
stlinux23-host-STLinux_deps-0.1-5.i386.rpm (請貼成一行)

rpm 會抱怨說不應該這樣用的,你要用alien 才對,不用理它

裝好之後去下載新版的install script,光碟裡面附的不相容python-2.6,
所以得抓新版。

ftp://ftp.stlinux.com/pub/stlinux/2.3/install

下載下來請把 install檔案打開,用文字編輯器改兩個地方:

第 356列 "yum-wavefront-3.2.24-1.i386" 換成 "yum-wavefront-3.2.24-3.i386"

第 358列 yum-2.6.1-17.i386 換成 "yum-2.6.1-19.i386" (加上雙引號並改19)

然後存檔離開,並將檔案屬性設定成「允許作為程式執行」。

安裝STLinux :
進到終端機存放install 檔案的目錄,然後輸入指令

host% sudo ./install --debian all-sh4-glibc

都沒錯誤訊息的話應該會下載 664個套件802 MB大小的檔案,等它跑完吧。

跑完後切到 /opt/STM/STLinux-2.3/host/bin目錄,輸入指令

host% sudo ./stmyum update

之後會自動將現有的套件再做更新。

設定PATH路徑:
必須要將編譯器的路徑設好,如此make指令才抓的到,編譯器的路徑在

/opt/STM/STLinux-2.3/devkit/sh4/bin

請添加到~/.bashrc 檔案的PATH變數中,然後重新啟動終端機,直接輸入

host% sh4-linux-gcc

如果回應說「 sh4-linux-gcc: 沒有輸入檔案」的話代表路徑設置成功。到此
為止已經可以開始編譯核心了。

--

____ _ _ _ _ ____ _ _ ____ _____ ____
(_ _)( \( )( \/ )( ___)( \( )(_ _)( _ )( _ \
_)(_ ) ( \ / )__) ) ( )( )(_)( ) /
(____)(_)\_) \/ (____)(_)\_) (__) (_____)(_)\_)


--

All Comments

Dorothy avatarDorothy2011-03-15
c大也參一腳了 (?)
Quanna avatarQuanna2011-03-20
也可以到 /usr/bin 把python指向 python2.5
Suhail Hany avatarSuhail Hany2011-03-24
樓上說得對,但Ubuntu 10.10我找不到
python-2.5的安裝套件,所以就沒用這招了
Ophelia avatarOphelia2011-03-28
肥佬黎放出的核心比STLinux給的要舊,看來
Ula avatarUla2011-03-31
應該要直接編官方的核心比較好,至少驅動
程式有多一些。
Zanna avatarZanna2011-04-04
MOD比較有改的價值 試試看....>)|)m
Brianna avatarBrianna2011-04-07
沒申請MOD啊