Ubuntu下Object-C开发环境搭建


一.下午1点到5点半,iPhone的application介绍会,做了4个简单的application,确实很有意思。

二.以下共有三种方法,只有第三种方法成功了

1.You can program the Objective-C without MacBook.
Please refer the below link to install Objective-C compiler in you Ubuntu
mchine.
http://d.hatena.ne.jp/tomute/20090112/1231809116

2.Ubuntu 9.10下搭建Object-C开发环境(转)(这个写的很全,但是没有成功)
Object-C是Apple对C语言的扩展,但是它配套的开发环境必须要运行在Leopard系统上,而这个系统又要运行在Mac机,无奈我还是个学生,再换个苹果本不太实现,把现在的系统格了换Leopard实在是舍得,当初配置这个系统没少花精力呢,虚拟机上装Leopard性能又不能让人接受,无奈只能尝试搭建Xcode以外的开发环境,很幸运,还真有,Ubuntu下用GNUStep就可以了,网上有很多讲解安装的过程,但是讲的都不详细,而且还有好多是错的,更无奈的是竟然还有N多的人也不验证一下内容正确不正确,就拿来转贴,给搜索带来了很多的麻烦,无奈自己又的研究,又是查资料,终于搞定了,现在和大家说一下具体的步骤吧:

1)安装gnustep-devel,可以通过sudo apt-get  install gnustep gnustep-devel安装,但是安的时候会告诉你有好多包已经不能用了,更好的办法是用新立得软件包管理器安装,打开之后输入:gnustep- devel,右键标记安装,会提示你还需要装很多其它的依赖包,先确定,然后点应用就可以了。

2)安装完毕后,也是最关键的一步,是配置gnustep-make的环境变量,与windows不同,Ubuntu的用户环境变量是放在.bashrc文件里面的,这个文件在用户的根目录下,当然,你是找不到的,因为是隐藏的,Ubuntu系统想要隐藏文件的话是在文件名前面加.,显示隐藏文件的方法是Ctrl+H,所以,在用户的根目录下,显示隐藏文件后,找到.cshrc,在最后面加入如下配置:

#set GNUstep
GNUSTEP_ROOT=/usr/share/GNUstep
export GNUSTEP_ROOT
source /usr/share/GNUstep/Makefiles/GNUstep.sh

如果不加入上面的配置的话,在编译objective-c源文件的时候会提示/common.make,/tool.make找不到,也是这里困扰了我好久,所以这个很重要.

完成上面的配置生,object-c的开发环境我们就已经搭建好了,接下来就是用gnustep开发一个object-c来测试一下了

1)应用程序->编程->Project Manager IDE->File->New->Source File->Objective-C Language Source File

然后写一个简单的Hello World程序

2)File->Save保存在一个目录里面,记得保存成Objective-C类型的,可以看到文件的类型是.m

3)然后在这个目录里面创建一个空文件,不需要任何文件类型,但是名字必须是GNUmakefile,内容如下:

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME = LogTest
LogTest_OBJC_FILES = source.m

include $(GNUSTEP_MAKEFILES)/tool.make

这里的LogTest可以换成任务名字,代表编译之后的可执行文件名,只要两个地方统一就好了,source.m是你刚刚保存好的原文件名,换成你自己的,这里的$(GNUSTEP_MAKEFILES)引用的是我们设置好的gnustep-make的path,所以没有第2步的设置,这里是找不到对应的目录的。

4)写好这个文件后,在终端进入这个目录,然后执行make,如果一切没问题的话,目录中就会多出来一个obj目录,里面是编译好的可执行文件。

5)再执行./obj/LogTest,就可以看到运行的结果了,这里的LogTest注意,和上面对应,当然可以换成你自己的


3.Ubuntu下Object-c的开发环境搭建(这个简单成功了)

Gnu编译器只支持最基本的部分Object-c, 为了Ubuntu下使用整个的Objective-C的Cocoa /openStep环境,所以必须安装gcc和gcc和Objective-C支持的包,GNUstep的环境.

首先安装gnustep和gobjc

sudo apt-get install gobjc gnustep gnustep-devel

弄个Hello world的代码尝试编译一次

#import <stdio.h>

int main( int argc, const char * argv[] ) {
    printf("hello world\n");
    return 0;
}

然后执行编译:

gcc hello.m -o hello

如果调用到了 object-c的库, 以上编译命令会出错, 需要用下面命令:

gcc `gnustep-config --objc-flags` -lgnustep-base hello.m -o hello

然后允许代码看看

./hello

输入了

hello world

OK了

相关内容