windows下安装Object-C开发环境【sh】方式

在Windows下搭建Objective C开发环境,需要到GNUstep官方网站上下载,四个软件包: GNUstep MSYS System、 GNUstep Core、 GNUstep Devel、 Cairo Backend。其中,前两个软件包是必须要安装的,第三个软件包是安装一些开发工具,比如:gcc、g++等,所以如果是学习Objective C的话,这个包也是必须要安装,第四个软件包是安装glib等库,这个包安装不安装根据具体情况而定。
GNUstep 就是提供类似Cocoa(苹果OS的开发框架)的API和工具,目前支持GNU/Linux and GNU/HURD, Solaris, NetBSD, OpenBSD, FreeBSD, Darwin和Windows,免费使用的。这个项目使Objective C能在多数流行平台上开发和运行。有关详细的介绍开始参考 GNUstep的官方网站。
下载安装那四个package,可以,我试过!
http://www.gnustep.org/experience/Windows.html
下载上述软件包后,点击安装就可以了,不分顺序。然后,需要确认是否安装成功,并且是否能成功编译Objective C代码。 
在“开始”菜单中“所有程序”下可以找到“GNUstep”->“shell”,就会出console窗口,可以试试一些Linux命令(ls,cd,mkdir等)。


#import <Foundation/Foundation.h>  
int main (int argc, const char *argv[]) {    
  NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];      
  NSLog(@"Hello World!");    
  [pool drain];    
  return 0; 
 }   
 在 Windows环境下用文本编辑器(Editplus,UE等),编写上述代码,并且保存到GNUstep安装目录下的/home下,比如我把 GNUstep安装在D:\Developer\下面,则你的文件应该放在GNUstep\msys\1.0\home\主机名 下面,具体路径可以在console下面运行pwd命令查看,取名为helloworld.m。在GNUstep的console窗口命令行下,
    1、cd /home
    2、gcc -o helloworld helloworld.m -I/GNUstep/System/Library/Headers -fconstant-string-class=NSConstantString -L/GNUstep/System/Library/Libraries -lobjc -lgnustep-base
    3、运行helloworld.exe
   说明:第二步中的一些参数明说,如果熟悉Linux/Unix下C/C++编译的话,上述参数应该很熟悉,-I表示头文件查找的路径,-L表示库文件查找 路径,-l表示需要链接的库文件。但是,-fconstant-string-class=NSConstantString  对于这个参数可能比较陌生,这个参数主要是指定常量字符串所使用的class。  
自己写了一个简单的脚本,要是嫌编译源代码麻烦,可以建一个文件,比如lc.sh,然后把下面的内容复制进去:
#!/bin/sh
gcc -o $1 $2 -I/GNUstep/System/Library/Headers -fconstant-string-class=NSConstantString -L/GNUstep/System/Library/Libraries -lobjc -lgnustep-base
然后在console下面运行如下命令:chmod +x lc.sh
以后要编译程序的时候,就在命令行下面输入:./lc.sh helloworld helloworld.m
文件中的$1和$2分别表示命令行中的helloworld 和 helloworld.m
可以在GNUstep下Shell中运行 helloworld.exe
    helloworld.exe编译并运行成功的话,说明windows下Objective C开发环境就搭建好了,这样就可以开始以廉价方式的学习Objective C。
另外:object-c有两种编译方式,一种即为本文的sh方式,另一种为makefile方式,请参考我的另外一篇博文 http://rangyang163.blog.163.com/blog/static/3774375820117521144222/

你可能感兴趣的:(windows,职场,iPhone,休闲,Object-C)