LINUX UNBUNTU10.04 下 搭建OC编译环境

(转载)http://blog.sina.com.cn/s/blog_833996210100rgl4.html

1安装 / install GNUstep on ubuntu

下面列出来的包是安装GNUstep环境所必须的:

    * build-essential
    * gobjc
    * gobjc++
    * gnustep-devel

用 apt-get install 就可以搞定

本人怕麻烦就直接

sudo apt-get install gnustep*

这样会安装所有的 GNUstep的东西,所谓一劳永逸
2 hello world

这个是远近闻名的程序

#import
int main(int argc, const char *argv[]) {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSLog(@”Hello worldn”);
[pool drain];
return 0;
}

保存为 hello.m

这个时候你尝试用gcc 去编译是会出错的

gcc -o hello hello.m

fatal error: Foundation/Foundation.h: No such file or directory

因为你用了foundation的库,gcc不知道
3 make

我们现在要用GNUstep的方式即makefile的方式来编译,GNUstep已经给我们做好了编译脚本在: /usr/share/GNUstep/Makefiles/GNUstep.sh

我们现在就要用到它,先做一个环境变量 就叫 GNUSTEP_MAKEFILES 当然名字随你起

打开 .bashrc(如果不知道在哪,就去找找)

$ cd

$ vim .bashrc

在最下面添加
#set GNUstep
GNUSTEP_MAKEFILES=/usr/share/GNUstep.sh
export GNUSTEP_MAKEFILES
source /usr/share/GNUstep/Makefiles/GNUstep.sh

然后回到hello.m的目录

创建文件GNUmakefile 必须叫这名

添加

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME = LogTest
LogTest_OBJC_FILES = source.m

include $(GNUSTEP_MAKEFILES)/tool.make

保存

然后,直接运行

$make

如果顺利通过,就会产生一个obj目录

$cd obj

$./hello

你可能感兴趣的:(linux)