对于Iphone开发学习者而言,Object -c 是必修的语言。但是由于苹果的自我封闭的产业链发展模式(从芯片、机器、开发语言、终端产品、服务)的限制,要想开发针对苹果iPhone等产品的应用程序,就需要用Mac机器,在Xcode的IDE上使用Objective C语言开发。所以,要想廉价方式学习Objective C就必须要在Windows上能搭建一个Objective C开发环境。
在Windows下搭建Objective C开发环境,需要到http://www.gnustep.org/experience/Windows.htmlGNUstep官方网站上下载,四个软件包:GNUstep MSYS System、GNUstep Core、GNUstep Devel、Cairo Backend。其中,前两个软件包是必须要安装的,第三个软件包是安装一些开发工具,比如:gcc、g++等,所以如果是学习Objective C的话,这个包也是必须要安装,第四个软件包是安装glib等库,这个包安装不安装根据具体情况而定。
安装好后在“开始”菜单中“所有程序”下可以找到“GNUstep”->“shell”,就会出console窗口,可以试试一些Linux命令(ls,cd,mkdir等)。
现在我们可以编写一个简单的代码进行测试,看看我们的环境是否已经搭建好了
代码:
- #import <Foundation/Foundation.h>
- int main( int argc, const char *argv[] ) {
- NSLog(@"hello world\n");
- return 0;
- }
在Windows环境下用记事本等编写上述代码,并且保存到D:/home下,取名为helloworld.m。在GNUstep的console窗口命令行下,
1. cd d:\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. 此话在home文件夹下会自动生成helloworld.exe文件。在终端输入
helloworld.exe
helloworld.exe编译并运行成功的话,说明windows下Objective C开发环境就搭建好了
说明:第二步中的一些参数明说,如果熟悉Linux/Unix下C/C++编译的话,上述参数应该很熟悉,-I表示头文件查找的路径,-L表示库文件查找路径,-l表示需要链接的库文件。但是,-fconstant-string-class=NSConstantString 对于这个参数可能比较陌生,这个参数主要是指定常量字符串所使用的class。
如果在终端显示找不到头文件,建议考虑把那些软件重新安装一次