在ubuntu上安装 GNUstep 编译objective c

前端之家收集整理的这篇文章主要介绍了在ubuntu上安装 GNUstep 编译objective c前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

最近看了很多文章,互联网发达今天,想找一篇对的文章还真TM难, 再次BS一下,那些不知所云就转贴的竖子,本来以为很简单的 objective c 在 gcc上的编译问题,因为gcc很本就可以支持objective c 的,花了两天的时间搞定, 不得不再次感叹互联网的强大 @H_301_1@

gcc是可以,但是不用GNUstep 而写obj c 是没有什么意义,如果用GNUstep 那gcc老的方法就会有问题,最烦人的就是 @H_301_1@

Foundation/Foundation.h: No such file or directory

这个错误 @H_301_1@

闲言少表,来点直接的 @H_301_1@

1安装 / install GNUstep on ubuntu
下面列出来的包是安装GNUstep环境所必须的: @H_301_1@

build-essential
gobjc
gobjc++
gnustep-devel
用 apt-get install 就可以搞定 @H_301_1@

本人怕麻烦就直接 @H_301_1@

sudo apt-get install gnustep* @H_301_1@

这样会安装所有的 GNUstep的东西,所谓一劳永逸 @H_301_1@

2 hello world
这个是远近闻名的程序 @H_301_1@

#import <Foundation/Foundation.h> 

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

保存为 hello.m @H_301_1@

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

gcc -o hello hello.m @H_301_1@

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

因为你用了foundation的库,gcc不知道 @H_301_1@

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

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

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

$ cd @H_301_1@

$ vim .bashrc @H_301_1@

在最下面添加 @H_301_1@

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

然后回到hello.m的目录 @H_301_1@

创建文件GNUmakefile 必须叫这名 @H_301_1@

添加 @H_301_1@

include $(GNUSTEP_MAKEFILES)/common.make 

TOOL_NAME = LogTest 
LogTest_OBJC_FILES = source.m 

include $(GNUSTEP_MAKEFILES)/tool.make

保存 @H_301_1@

然后,直接运行 @H_301_1@

$make @H_301_1@

转载自http://www.ithao123.cn/content-1104940.html@H_301_1@

猜你在找的Ubuntu相关文章