Mac OS X 平台上的開發利器---XCode
楊小華(normalnotebook@126.com)
一.XCode簡介
記得以前在瀏覽關於龍芯的新聞時,龍芯的製造者曾經說過一句話,一款CPU能否流行,關鍵是否有對應的整合式開發環境。對於一款操作體統來說,也何嘗不是這樣。在windows系統上做開發的人,最熟悉的恐怕是visual studio,eclipse等。在linux上做過開發的人,恐怕用的最多是vi和emacs。也有不少linux廠商在該平台上推出了基於eclipse,經過改造後的整合式開發環境,只是各個廠商取的名字不同而已。
Mac OS X是一個unix作業系統,最基本的編譯和調試工具分別是gcc和gdb。蘋果機器上預裝的Mac OS X,不具備開發環境。需要單獨安裝XCode工具,這樣才具備開發能力。XCode可以從蘋果的網站下載。
首先我們來目睹一下XCode的神秘面紗:
二.揭開XCode的神秘面紗
XCode是一款強大的開發工具,可以建立多種工程。:
不難看出, XCode工具支援多種類型的工程。每個大項裡面又細分出很多小項。
心動不如行動,下面建立一個多線程式控制制台程式,來體驗XCode的強大功能。
取名為multithread,示列代碼如下:#include <stdio.h>
#include <pthread.h>
void *task1()
...{
int i=0;
for(i=0;i<500000;i++)
printf("Hello, task1! ");
}
void *task2()
...{
int i=0;
for(i=0;i<500000;i++)
printf("Hello, task2! ");
}
int main (int argc, const char * argv[]) ...{
// insert code here...
pthread_t ThreadA,ThreadB;
printf("Hello, World! ");
pthread_create(&ThreadA,NULL,task1,NULL);
pthread_create(&ThreadA,NULL,task2,NULL);
pthread_join(ThreadA,NULL);
pthread_join(ThreadB,NULL);
return 0;
}
編寫完程式後,然後開始編譯,單擊[Build]菜單中的Build選項,跟visual studio 和 eclipse不同的是,如果出現編譯錯誤,不會彈出表單,報告錯誤,只是在狀態列顯示有幾個錯誤和警告。如果想具體知道錯在哪裡,可以單擊左側欄中的errors and warnings 選項,一目瞭然的查看出錯在哪個檔案及行數,錯誤原因等資訊。
XCode提供了豐富的調試手段,可以以圖形介面調試,也可以通過終端來調試。終端調試方式就是普通的gdb介面,:
對應的圖形介面為:
在gdb中,可以設定斷點,觀察點,異常點。但在XCode工具中,沒有提供設定觀察點的方法。同時它還提供了大量新增斷點的方法,:
利用XCode工具建立工程,可以省去我們編寫makefile的煩惱。這一點做的跟visual studio類似。
ok,XCode工具基本用法就介紹到這裡,下一篇介紹XCode提供的效能工具。現在多線程編程已經成為趨勢,我們將利用這些工具對多線程進行分析。