windows 上用Sublime Text编译objective-c

本文我个人整理,逐步完善中。参考了很多大牛的知识,设计内容链接如下:

参考1:http://www.cnblogs.com/WhoJun/archive/2013/09/19/3330089.html

参考2:http://www.bubuko.com/infodetail-33011.html


配置环境所需资源下载:http://download.csdn.net/detail/u012370255/9424528


在windows 上编译OC是很纠结的一件事,建议去买个苹果本或者装个黑苹果。

实在不想买或者装得话,本文章是给初学objective-c用的,如果要深入objective-c,请购买苹果电脑或装黑苹果。

 

请看下面的步骤:

 

一、搭建objective-c环境

在windows上搭建objective-c开发环境,需要到GNUstep官网上下载几个软件(http://www.gnustep.org/experience/Windows.html)的相关安装包。

以下是要下的软件包:

GNUstep MSYS System  Required

GNUstep Core  Required

GNUstep Devel Optional

GNUstep Cairo

 

然后安装到任意目录~~不过要记得。对于后面步骤是很重要的。

 

 

在这里推荐一个软件,一个神级编辑器 Sublime Text (http://www.sublimetext.com/)

 

这个编辑器很强大,基本上能够识别全世界编程语言,我用了之后基本上抛弃了一些(例如editPlus等)编辑器。

 

建议下载安装,后面的编译运行方面可以省去绝大部分的操作。

 

二、用Sublime Text搭建编译环境

 

安装Sublime Text后,打开Sublime Text ,点击菜单–> Tools - > Build System – > New Build System ...

 

 

然后会打开一个文本,

 

将下面代码完全替换到里面,如果之前装在D:/根目录的仁兄,就不用修改下面代码

,如果不是请将之前你装的环境中的的目录替换下d:/GNUstep/GNUstep/System/Library/Headers

替换成你安装的目录

 

{
 
"cmd" : [ "gcc"  , "-o"  , "${file_base_name}.exe"  , "${file_name}"  , "-I" , "d:/GNUstep/GNUstep/System/Library/Headers"   , "-L"  , "d:/GNUstep/GNUstep/System/Library/Libraries"  , "-std=c99"  , "-lobjc" , "-lgnustep-base"   , "-fconstant-string-class=NSConstantString" ],
 
     // "file_regex" : "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$" ,
 
     "working_dir" : "$file_path" ,
 
     "shell" :true ,
 
     "selector" : [ "source.m" , "source.mm" ],
 
     "variants" :    [
 
     {
 
         "name" : "Run" ,
 
         "working_dir" : "${file_path}" ,
 
         "cmd" : [ "${file_base_name}.exe" ]
 
     }
 
     ]
 
}

  

 

 

然后直接保存(保存时建议将文件命名为Objective-c)就行了~。

 

 

三、运行第一个hello world

 

先打开刚刚设置的编译文件点击菜单–> Tools - > Build System – > 刚刚取名的文件名

 

打开会在后面出现一个小钩钩,那集证明你编译是会运行这个编译文件。

 

先创建一个,以后代码的存放文件夹(一定要英文目录,中文目录不识别)

 

 

打开sublime 编辑器,创建一个文本,我们可以写一个简单的hello world

 

 

然后ctrl+s保存一下,后缀名该成 .m 文件,(.m 文件就是oc文件的后缀名)

 

就可以写oc的程序

 

这个编辑器,他的强大之处可以识别每个编程语言的后缀名,然后将他们的语法进行识别,增加对应的高亮效果,还有他的快捷键都相当迷人,快捷键就不说了。

 

写完程序后进行一下保存ctrl+s,然后ctrl+b进行编译,ctrl+shift+b运行。

然后下放就会出现一个编译和运行的信息框。

 

 

这就说明我们搭建的平台成功了。


四、常见问题

1、sublime text 2 调试python时结果空白

如果ctrl+b编译无结果,ctrl+shift+b运行也没有结果,请参看下边的解决方法,亲测可用:

之前用的时候都一切正常,今天突然就出现了这个问题。按ctrl+b执行的时候结果只有空白,查了很多文章都只提到了中文路径、系统路径等等,没有解决问题,直到看到了这篇文章:http://384444165.iteye.com/blog/1798107
文章中提到,Sublime Text 2  ctrl+b 如果出现运行为空白,按ctrl+`来显示错误,如果错误是UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xc0 in position 9: ordinal not in range(128),那么就和我遇到的情况一样了。
这个问题的起因是配置文件目录下Packages\Default目录下的exec.py在编辑环境变量,但是环境变量中的字符集缺少了ascii字符集。
解决方法如下:
找到配置文件目录位置(在sublime text 2中点Preference -> Browse Packages)在Default目录下找到exec.py,编辑;

找到以下两行:
        for k, v in proc_env.iteritems():
            proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())
更改为:
        for k, v in proc_env.iteritems():
            try:
                proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())
            except UnicodeDecodeError:
                print("Encoding error")
                print("VARIABLE: ", k, " : ", v)
就能够解决问题了。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值