手機 HTC HD2 可以說是比較另類的一部手機,因為他出廠的系統是win ce WM 系統,此系統是微軟的手機作業系統,但是作為WM系統的末日機皇,HD2仍然是一部很不錯的機器。
之所以說他比較奇葩是因為他不單單安頓於現狀,他可以刷不同的手機作業系統,卡載類比android,直刷android ,類比運行windows 98 ,windows xp,當然ubuntu也不在話下,wp7可以說是流暢運行,Meego 勉強運行。可以說真的是無所不能了。
我有幸買到一部HD2,於是刷機就成了必修課!
HD2 主要有兩中bootloader ,都是國外大神製作的,一是MAGBLD,一是cLK,前者閉源,不公開原始碼,但是可以引導多個系統(wm,wp7,android)。後者開源,但是只支援android。兩者都可以引導多個android,即NAND 或者Native SD。
既然cLK開源,那就把代碼拿來研究一下吧。
按照作者給的教程,自己試著編譯一把,結果問題諸多啊
http://forum.xda-developers.com/showthread.php?t=1114053
arm-linux-gcc: Command not found
因為是交叉編譯,所以一定要把編譯環境弄好,環境變數問題。
PATH裡有/usr/local/arm/2.95.3/bin, /usr/local/arm/2.95.3/bin/下有arm-linux-gcc檔案,但是make的時候,就是找不到arm-linux-gcc
原因:
export PATH=$PATH:/usr/local/arm/2.95.3/bin
是設定目前使用者的PATH,而sudo執行make的時候,使用的是超級使用者權限,那也就使用了超級使用者的PATH(但是這個PATH裡,並沒有/usr/local/arm/3.4.1/bin)
解決方案:
先開啟一個超級使用者權限的shell:
sudo –s
在當前shell下,設定環境變數:
export PATH=$PATH:/usr/local/arm/2.95.3/bin
#關閉shell以後就不能使用,此時使用編輯 /etc/profile,在檔案末端加上 export PATH=$PATH:/usr/local/arm/2.95.3/bin
最後終於成功編譯了cLK原始碼,產生了
RUU_signed.nbh
不過還沒有敢往手機上刷,怕起不來,因為只有這一部手機。。。。
源碼具體還沒有怎麼看,貌似是一個小號的linux kernel.