`
dowhathowtodo
  • 浏览: 780462 次
文章分类
社区版块
存档分类
最新评论

Mac OS X 平台上的开发利器---XCode

 
阅读更多
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()
...{
inti=0;
for(i=0;i<500000;i++)
printf(
"Hello,task1! ");
}


void*task2()
...{
inti=0;
for(i=0;i<500000;i++)
printf(
"Hello,task2! ");
}



intmain(intargc,constchar*argv[])...{
//insertcodehere...

pthread_tThreadA,ThreadB;
printf(
"Hello,World! ");
pthread_create(
&ThreadA,NULL,task1,NULL);
pthread_create(
&ThreadA,NULL,task2,NULL);
pthread_join(ThreadA,NULL);
pthread_join(ThreadB,NULL);

return0;
}

编写完程序后,然后开始编译,单击[Build]菜单中的Build选项,跟visual studio 和 eclipse不同的是,如果出现编译错误,不会弹出窗体,报告错误,只是在状态栏显示有几个错误和警告。如果想具体知道错在哪里,可以单击左侧栏中的errors and warnings 选项,一目了然的查看出错在哪个文件及行数,错误原因等信息。
XCode提供了丰富的调试手段,可以以图形界面调试,也可以通过终端来调试。终端调试方式就是普通的gdb界面,如图所示:

对应的图形界面为:



在gdb中,可以设置断点,观察点,异常点。但在XCode工具中,没有提供设置观察点的方法。同时它还提供了批量添加断点的方法,如图所示:

利用XCode工具建立工程,可以省去我们编写makefile的烦恼。这一点做的跟visual studio类似。
ok,XCode工具基本用法就介绍到这里,下一篇介绍XCode提供的性能工具。现在多线程编程已经成为趋势,我们将利用这些工具对多线程进行分析。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics