[網樂通] Ubuntu安裝交叉編譯(Cross Compile)環境,使用電腦編譯網樂通可執行的程式

 

忍不住所以就又開始摸網樂通了(淚),最近為了讓網樂通XBMC放影片時受到網路線的束縛,所以就請教了許多大大要如何達到這個目標~!

其實可以直接在網樂通上面編譯的,不過因為它那杯具般的效能….所以還是用電腦來跑比較快,幸好stlinux(專為sh架構開發的linux)有提供完整的交叉編譯(Cross Compile)工具,當然就直接上啦~!建議~沒有Linux使用經驗的話就不要繼續下去了,因為會有滿滿的挫折感(O),不過會看這種文章的人應該不會有這個問題XDD

 

網樂通 紅米手機攝

 

 

首先呢~把這些軟體下載完~!

VirtualBox
請挑最新的!

Ubuntu 12.04.4 Server 32位元
server版即可~桌面版只是多吃效能而已~!為什麼用12.04!?前輩推薦的,太新好像不太好!

PieTTY
talnet & ssh軟體

WinSCP
sftp~傳檔案很方便!

 
 
 

下載完了嗎?那就把ubuntu裝起來吧!安裝ubuntu server可以參考相關文章,安裝最後記得選OpenSSH嘿!這樣用SSH控制複製貼上比較方便~!

安裝完應該像這樣

 

 

再來呢~先登入你的ubuntu~然後輸入
[email protected]:~# ifconfig
eth0 Link encap:Ethernet HWaddr 08:00:27:29:68:9b
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe29:689b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:80 errors:0 dropped:0 overruns:0 frame:0
TX packets:69 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:9227 (9.2 KB) TX bytes:11967 (11.9 KB)
==========略==========
[email protected]:~#

註:為什麼是root帳號呢?因為懶的打sudo… 如果你也跟我一樣懶的話也可以替root設密碼
[email protected]:~$ sudo passwd root #替root設定密碼
[sudo] password for nextvod: #輸入你目前帳號的密碼,都不會顯示
Enter new UNIX password: #輸入root的密碼
Retype new UNIX password: #再一次
passwd: password updated successfully
[email protected]:~$ su #進入root
Password: #輸入岡設定的root密碼
[email protected]:/home/nextvod# cd #回到root家目錄
[email protected]:~#
 
 

 

 

看到了嗎?「addr:10.0.2.15這個就是安裝在虛擬機的ubuntu裡面的虛擬IP,每個人應該都不一樣,把你顯示的位置記下來!

 

為了方便控制,設定一下vbox讓我們的電腦可以對虛擬機作SSH連線,把ubuntu關機後,來到「設定→網路→介面卡1→進階→連接埠轉送」,按下右上角的「+」,照這張圖片作設定,10.0.2.15 請記得不要照抄唷!!

右邊IP不要照抄!!

 

設定完成之後,使用Pietty作SSH連線即可登入ubuntu,用SSH的好處就是複製貼上很方便啦XDD

127.0.0.1:3022

登入成功

 

安裝前先更新套件庫
[email protected]:~# apt-get update

參考stlinux官方安裝教學,先安裝bash
[email protected]:~# apt-get install bash

安裝完成後,設定把預設 shell 改成 bash
[email protected]:~# dpkg-reconfigure dash#會跳出一個畫面請選no

 

再安裝rpm
[email protected]:~# apt-get install rpm 

安裝一下必備的程式
[email protected]:~# apt-get install python-urlgrabber python-rpm python-sqlitecachec

 

這裡選擇安裝STLinux 2.4 因為現在(201407)都是用這個版本了XD

先在家目錄隨便建個資料夾(mkdir),進入(cd)之後再下載最新版的rpm
[email protected]:~# mkdir stlinux #隨便取
[email protected]:~# cd stlinux #進去這個資料夾
[email protected]:~/stlinux# wget http://download.stlinux.com/pub/stlinux/2.4/misc/stlinux24-host-STLinux_deps-20140120-1.i386.rpm #下載最新版的STLinux 2.4 rpm
[email protected]:~/stlinux# rpm -ivh stlinux24-host-STLinux_deps-20140120-1.i386.rpm #安裝

再來下載自動安裝檔案!
[email protected]:~/stlinux# wget http://download.stlinux.com/pub/stlinux/2.4/install

直接執行install可能會權限不足,所以先設定一下檔案權限
[email protected]:~/stlinux# chmod +x install

開始安裝
./install -d all-sh4-glibc

 

 

(茶

====有939個檔案,大概有1.2GB,休息一下====

 

慢慢來

 

 

====終於裝好了====

 

終於..

進入stlinux的資料夾,更新一下裡面的檔案,如果有出現 y/N的話就選y
[email protected]:~# cd /opt/STM/STLinux-2.4/host/bin/
[email protected]:/opt/STM/STLinux-2.4/host/bin# ./stmyum update

建立 Cross-Compile 指令的 PATH,就可以不用輸入絕對路徑了
[email protected]:~# vi ~/.profile #編輯~/.profile

加入以下內容後存檔
# for STLinux Cross-Compile
export PATH="$PATH:/opt/STM/STLinux-2.4/devkit/sh4/bin"

輸入. ~/.profile有以下結果才算成功喔!
[email protected]:~# . ~/.profile #「.」和「~/.profile」之間有一個空格
[email protected]:~# sh4-linux-gcc
sh4-linux-gcc: fatal error: no input files
compilation terminated.

大功告成!完成Cross Compile環境架設!

 

但是….我的網卡驅動模組還是編不起來…,請教前輩後才知道,因為這晶片的的年紀太老了…硬要編的話會很麻煩,只好放棄他了。不過也因為這樣才學會了模組、kernel編譯,昨天成功在XBMC上面開機了XDDDD,Linux真的還蠻有趣的XD

 

 

參考網站
Installing STLinux on Ubuntu | STLinux
安裝 STLinux Cross-Compile Enviroment(交叉編譯環境) 至 Ubuntu – OSSLab

3 Comments

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *