日期:2014-05-17  浏览次数:20848 次

Windows下编译objective-C

http://www.gnustep.org/experience/Windows.html

ftp://ftpmain.gnustep.org/pub/gnustep/binaries/windows
在上面的网站下载
gnustep-core-0.23.1-setup.exe
gnustep-system-0.23.0-setup.exe
Gorm-1.2.10-setup.exe
SystemPreferences-1.1.0-setup.exe
注意都下最新版本的吧.
下好后,都是一路NEXT安装就好了.
假设你装在D盘,
>代码应该写在什么地方
然后说写代码,代码写在哪里都可以.就放C:/好了.
>怎么生成运行
假设你写一个程序叫 hello.m, 在c:/下面.
那么打开cmd 用如下命令去编译,
D:\GNUstep\mingw\bin\gcc.exe hello.m -o hello.exe -I D:\GNUstep\GNUstep\System\Library\Headers -L D:\GNUstep\GNUstep\System\Library\Libraries -lobjc -fobjc-exceptions -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import
长是长了点,但是很容易懂的,简单说一下,
最前面的是指定gcc.exe,这个你是肯定知道的.
后面的 -I xxx 和 -L xxxx 分别是指编译的时候用到的头文件和库,
主要是cocoa的一些库吧.
再后面是一堆 Flag,也就是编译选项,看名字都拆差不多了.
>我现在的问题是不知道代码应该写在哪里
>是新建TXT文档还是用什么其他的工具?
看了上面的编译命令,我想你已经知道怎么写了吧,
>能不能给推荐一个
VIM你用过么?会用的话,它的好处就不多说了.
我正在用它,自定义热键,
一个F8就过去编译,一个C-F8就看到运行结果,
并不要你真正的去CMD下编译运行也可以的
不会的话,就UE, EditPlus, 只要有objective c 语法提示的都可以吧.
>是新建TXT文档还是用什么其他的工具?
说白了,就是c程序啊,当然是txt格式的了.
好了,重点的,安装 和 编译 都已经写给你了, 自己再研究一下吧.
PS.顺便说下,这个环境的OC,不支持2.0特性,
直接一点讲,不支持OC的属性操作,
也就是那个 @property 标签识别不了的.

----------------------------------------------------

----------------------------------------------------

----------------------------------------------------

转自:http://blog.csdn.net/hulefei29/archive/2010/02/21/5314018.aspx

?

Objective-C现在几乎已经变成了苹果的专利了,可以直接在苹果的Xcode上编译Objective-C程序,但是在Windows平台下的编译工具就寥寥无几了,本身这种语言用的人就不是很多。今天在网上突然看到了有人发帖,可以在Windows平台下编译Objective-C,就抱着好奇的心态试了试。没想到,居然成功了,现在就把怎样搭建Objective-C编译平台的经验拿出来和大家分享。

1、安装GNUstep
GNUstep Windows Installer提供了Windows平台下的Object-C的模拟开发环境,一共有四个软件包,其中GNUstep System和GNUstep Core是必装的,GNUstep Devel和Cairo Backend是选装的。只安装前两个就够了。

2、编写Objective-C代码
安装完成后,在开始菜单里的GNUstep选项里执行shell,就能打开命令行。直接在Windows里进入C:\GNUstep\home\Administrator(我的是Administrator,可能有的不一样)目录,在这里用你喜欢的工具(现在UltraEdit和Notepad++编辑器好像可以代码高亮)编写Object-C程序。
如:HelloWorld.m

#import <Foundation/Foundation.h>

int main (int argc, const char *argv[])
{
NSAutoreleasePool
*pool = [[NSAutoreleasePool alloc] init];
NSLog(
@"Hello World!");
[pool drain];

return 0;
}

3、配置环境变量
这一步很重要。GNUstep.sh是用来设置GNUstep开发环境变量的,如果没有执行,就会有很多头文件,库文件,命令找不到

在一个目录里写好了源代码以后,编写一个make配置文件,名字必须叫GNUmakefile,内容是

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME