1. 环境说明
如果想在WINDOWS平台上学习开发OC程序设计,则需要依赖开源的一个叫做GNUstep的一系列工具集,这个一系列工具集包括GCC4.6.1、MSYS1.x、等一整套在WINDOWS平台上编译与链接C&C++&OC程序代码 —— 其实就是MINGW,只不过针对OC开发进行了深度整合,并且新增了OC的一部分特性内容;如果想更关注GNUstep的发展历史则可以追溯到乔布斯NEXT公司相关事迹,具体我就不阐述了,可以自行百度。
2. 环境注意
● 目前这个工具集对于Objective-C 2.0有很多写法的方式并不是完全兼容,个人觉得仅仅只能作为学习使用;
● GNUstep目前仅仅只支持Foundation、AppKit框架,并不支持开发IOS所具备的UIKIT框架内容。
3. 环境准备
进入GNUstep官方网站:http://www.gnustep.org/,我们需要下载环境所需几样东西,gnustep-core-0.34.0-setup.exe、gnustep-devel-1.4.0-setup.exe、gnustep-msys-system-0.30.0-setup.exe;下载完毕之后依次按照顺序解压到同一目录即可。
4. 简单示例
1、打开MSYS1.x Shell
2、利用VI命令新建OC源文件并加入下列代码内容,取名为:hello.m
#import <Foundation/Foundation.h>
int main(){
NSLog(@"Hello World.");
return 0;
}
3、执行GCC命令进行编译
$gcc -o hello hello.m -I /GNUstep/System/Library/Headers -L /GNUstep/System/Library/Libraries -lobjc -lgnustep-base -fconstant-string-class=NSConstantString
4、运行程序
$./hello.exe
5. Eclipse C&C++ 整合开发
大家可以到Eclipse官方网站下载 Eclipse C&CPP最新版本即可,下载完毕之后按照下列的步骤进行。
5.1 新建C项目
5.2 新建源文件
新建源文件“hello.m”—— 源文件内容参考上述示例代码
5.3 新建Makefile文件
新建makefile文件之后填充以下内容至文件中(注意GNUstep安装的目录位置,我这里安装在C盘下);
CC := gcc
RM := rm
I := -I "C:/GNUstep/GNUstep/System/Library/Headers"
L := -L "C:/GNUstep/GNUstep/System/Library/Libraries" -lobjc -lgnustep-base
FLAGS := -fconstant-string-class=NSConstantString
EXECUTABLE := hello.exe
DEPENDENCIES :=
all : example
clean :
$(RM) $(EXECUTABLE)
example :
$(CC) -o $(EXECUTABLE) src/hello.m $(DEPENDENCIES) $(I) $(L) $(FLAGS)
5.4 编译并运行
右键点击项目进行编译然后运行编译后的文件即可。
5. 最后
在这里相关环境配置就到这里了,可以开始OC编程之旅啦,如果有什么问题给我留言,谢谢!