隨想錄(一種powerpc編譯學習的方法)

【 聲明:版權所有,歡迎轉載,請勿用於商業用途。 聯繫信箱:feixiaoxing @163.com】

 

    除了pc領域的x86、手機和嵌入式領域的arm、通信領域的mips,還有一種cpu架構用的也是很多的。那就是powerpc。記得我的第一份工作,當時在單位的主要工作就是負責大型交換機的開發,使用到的soc就是broadcom公司一款基於powerpc的soc套片。powerpc由於其出衆的性能和穩定性,在通信、汽車、航空領域使用的還是相當廣泛的。然而,相比較而言,powerpc的開發板很少,不利於學習。所以鑑於目前的這種情況,其實大家可以利用qemu學習powerpc。

 

    目前安裝的平臺是ubuntu 16.04,相同的操作也可以在其他linux平臺完成。

 

1、安裝工具集

 sudo apt-get install binutils-powerpc-linux-gnu

 

2、安裝c預處理工具

sudo apt-get install cpp-5-powerpc-linux-gnu

 

3、安裝gcc編譯器

sudo apt-get install gcc-5-powerpc-linux-gnu

 

4、安裝g++編譯器

sudo apt-get install g++-5-powerpc-linux-gnu

 

    有了這麼四個工具,編寫和開發嵌入式程序不是問題了。最簡單的嵌入式代碼一般是這麼幾個部分組成,boot.s、main.c、link.script、makefile。所以說,以上安裝的這些工具對於編譯這些文件是足夠了。或許有的同學會說,是不是需要安裝libc等庫文件?我的答案是,如果編譯的程序是在linux平臺上運行,那麼libc庫的安裝是非常有必要的。但是,如果安裝的程序是bare mental代碼,也就是我們通常說的裸奔代碼,那麼用這些工具來開發,綽綽有餘了。

 

    如果需要實際調試ppc程序,只需要查看一下qemu-system-ppc -M help支持哪些板子,直接用qemu做測試即可。一般的處理方法就是qemu -kernel os -S -s,接着用gdb os調試就好了。

 

    上面這些工具有什麼遺憾的話,那麼就是缺少一個gdb了。當然,要把gdb真正用起來,還需要在bare mental代碼中嵌入一段類似於gdb server的代碼,這也是額外需要增加的一份工作了。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章