黑马程序员技术交流社区

标题: 教大家如何在Windows中开发Object-c [打印本页]

作者: hastar    时间: 2015-3-11 18:24
标题: 教大家如何在Windows中开发Object-c
本帖最后由 hastar 于 2015-3-11 18:24 编辑

一般的话Object-c是在苹果设备下开发的,但由于很多同学没有苹果设备,这也没问题,那我们就在Windows下开发吧!!在Windows怎么样才能运行Object-c程序呢??
首先我们需要一个能编译Object-c的环境,好,那我们就来安装Object-c的开发环境吧!!
首先大家下载一下三个软件:
gunstep-msys-system-0.30.0-setup.exe
gunstep-core-0.31.0-step.exe
gunstep-devel-1.4.0-step.exe
我已经把这些下载好,放到我的网盘,大家可以去我的网盘下载:http://pan.baidu.com/s/1i37WMNz
不怕麻烦的同学也可以到GUNstep的官网下载这是官网的下载地址:http://ftpmain.gnustep.org/pub/gnustep/binaries/windows/

下好后,安装上述列出的顺序依次安装这三个软件。注意:这三个软件必须安装在同一个目录,默认在同一个目录,只要你不改就没关系。
安装好后,他会在你的开始菜单中添加一项GUNstep, 里面包含Shell批处理,点击这个就可以进入编译环境了。

这个编译环境其实就是利用gcc来编译Object-c程序的,在Shell里面他不可以编辑代码的
所以我们必须在其他的文本编辑工具中把程序写好,然后才能编译。

在Windows下就是麻烦呀:'(:'(:'(:'(:'(

别抱怨,麻烦的事情还没完呢!!

进入Shell后他的目录是是这个:C:\GNUstep\msys\1.0\home\当前用户名\我们得把自己编写好的代码复制到这个目录,到这步环境就算搭建好了。

下面我们来做个测试吧!
新建一个hello.m文件,代码如下
  1. #import <Foundation/Foundation.h>

  2. int main(int argc,const char *argv[])
  3. {
  4.         NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

  5.         NSLog (@"hello world");
  6.         [pool drain];

  7.         return 0;
  8. }
复制代码
利用这条语句,对hello.m进行编译:gcc -o hello hello.m -I/GNUstep/System/Library/Headers -fconstant-string-class=NSConstantString -L/GNUstep/System/Library/Libraries -lobjc -lgnustep-base

这条语句看起来非常的麻烦,我们可以写个Makefile文件来执行编译,这是我的makefile文件代码,大家可以参考参考
  1. CC = gcc
  2. CFLAGS = -fconstant-string-class=NSConstantString -fobjc-exceptions
  3. LFLAGS = -lobjc -lgnustep-base

  4. LIB_HDRS = /GNUstep/System/Library/Headers
  5. LIB_LIBS = /GNUstep/System/Library/Libraries

  6. BIN = hello.exe

  7. all : $(BIN)

  8. $(BIN) : hello.o
  9.         $(CC) -o $@ [        DISCUZ_CODE_33        ]lt; -L$(LIB_LIBS) $(LFLAGS)

  10. hello.o : hello.m
  11.         $(CC) -I$(LIB_HDRS) $(CFLAGS) -c [        DISCUZ_CODE_33        ]lt;

  12. clean:
  13.         rm -f $(BIN) *.o
复制代码







作者: chenhuan_ccit    时间: 2015-3-11 20:17
吊!吊!吊!
作者: hastar    时间: 2015-3-11 20:48
chenhuan_ccit 发表于 2015-3-11 20:17
吊!吊!吊!

你入学了吗???:) :) :)
作者: 丶小千    时间: 2015-3-11 22:10
直接装了黑mac了
作者: hunter、奇犽    时间: 2015-3-11 22:26
丶小千 发表于 2015-3-11 22:10
直接装了黑mac了

怎么装成功的,分享一下,要具体步骤,我也想装~拜托拜托
作者: 丶小千    时间: 2015-3-11 22:31
hunter、奇犽 发表于 2015-3-11 22:26
怎么装成功的,分享一下,要具体步骤,我也想装~拜托拜托

看来层主也没深接触过,,,我在寒假知道了黑马,然后准备装黑苹果,查了N多的帖子,什么远景论坛啥的到处找相关,系统都重装了N次了,有人说准备好一个月的时间,还不信,弄了10多天终于受不了了,不是这有毛病就是那有毛病,装上了系统驱动也搞不了,最后找的淘宝,去实体店花了200,驱动也比较完美了。让层主失望了
作者: hunter、奇犽    时间: 2015-3-12 09:06
丶小千 发表于 2015-3-11 22:31
看来层主也没深接触过,,,我在寒假知道了黑马,然后准备装黑苹果,查了N多的帖子,什么远景论坛啥的到 ...

用的感觉怎么样?不错的话我也联系一下~
作者: bluedevils    时间: 2015-3-12 09:16
好厉害:handshake
作者: 不爱不诺    时间: 2015-3-12 09:22
厉害啊,大神。
作者: adslunk    时间: 2015-3-12 09:52
丶小千 发表于 2015-3-11 22:31
看来层主也没深接触过,,,我在寒假知道了黑马,然后准备装黑苹果,查了N多的帖子,什么远景论坛啥的到 ...

我的x4500集成显卡上搜驱动据说全球无解。。
作者: kim55666    时间: 2015-3-12 09:59
感谢楼主分享
作者: adslunk    时间: 2015-3-12 10:11
Makefile做什么用的,该放在哪里?
作者: hastar    时间: 2015-3-12 13:46
adslunk 发表于 2015-3-12 10:11
Makefile做什么用的,该放在哪里?

多文件组合编译,和.m文件放在一起
作者: hastar    时间: 2015-3-12 13:48
不爱不诺 发表于 2015-3-12 09:22
厉害啊,大神。

感谢支持:):):)
作者: adslunk    时间: 2015-3-12 14:46
hastar 发表于 2015-3-12 13:46
多文件组合编译,和.m文件放在一起

这个保存为.m文件,然后和自己写好的.m一起编译链接?
作者: hastar    时间: 2015-3-12 16:18
adslunk 发表于 2015-3-12 14:46
这个保存为.m文件,然后和自己写好的.m一起编译链接?

makefile.txt就可以,执行的时候用 ./makefile.txt 就可以
作者: 丶小千    时间: 2015-3-12 21:39
hunter、奇犽 发表于 2015-3-12 09:06
用的感觉怎么样?不错的话我也联系一下~

感觉和win7速度差不多吧,能用这卖钱的都能保证系统稳定了,除非你对电脑做一些过激的操作,问清楚了再装
作者: adslunk    时间: 2015-3-13 18:00
hastar 发表于 2015-3-12 16:18
makefile.txt就可以,执行的时候用 ./makefile.txt 就可以

还是没搞懂,能不能来两行详细命令。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2