OC:Clang编译器编译OC代码

作者: Kevin丨Wang | 来源:发表于2015-07-20 22:37 被阅读4334次

    我们都知道可以通过Xcode来学习Objective-C编程语言,但是能不能脱离XCode这个IDE进行Objective-C学习呢?当然是可以的。

    作为程序员都应该知道任何一门编程语言都离不开编译器,OC也不例外,我们可以通过度娘搜索发现,XCode的默认编译器是clang,那么问题来了,我能不能通过clang命令直接编译并运行一段OC代码呢?当然是可以的。

    关于XCode编译器详细介绍可以参考该文章:编译器

    下面将叙述一下如何通过Mac OS中文本编辑器创建一个Hello Word的程序,并通过clang命令编译运行。

    步骤1

    打开“文本编辑”工具,输入以下代码,并保存为纯文本格式,文件名命名为HelloWord.m,路径随意放。
    #import <Foundation/Foundation.h>
    int main(int argc, const char * argv[])
    {
    @autoreleasepool
    {
    NSLog(@"Hello, OC!");
    }
    return 0;
    }

    步骤2

    接下来可以利用“终端”将HelloWord.m文件编译成可执行文件了,具体步骤:
    1.打开“终端”
    2.通过cd命令进入HelloWord.m文件所在目录
    3.使用clang命令对HelloWord.m文件进行编译
    最后生成HelloWord可执行文件,如下图所示。

    图1

    $ clang -fobjc-arc -framework Foundation HelloWord.m -o HelloWord

    有几个地方需要注意一下:

    • $符号是终端命令提示符,不是需要输入的内容
    • -fobjc-arc表示编译器需要支持ARC特性
    • -framework Foundation表示引用Foundation框架
    • HelloWord.m为需要进行编译的源代码文件
    • -o HelloWord表示输出的可执行文件的文件名

    步骤3

    生成可执行文件后,就可以在终端中执行该文件了,输入的命令如下:

    $ ./HelloWord

    执行结果如下图:


    图2

    另外也可以直接双击运行刚才生成的HelloWord可执行文件,运行结果和上面运行结果一样。


    图3
    至此通过几个简单的clang命令,就可以编译运行一段简单的HelloWord的Objective-C代码了。

    相关文章

      网友评论

      • IOS大大:一般用这个命令-rewrite-objc来看底层源码的逻辑
      • IOS大大:https://ke.qq.com/course/229709
        iOS高级班,第一期58,YY, 蘑菇街的等等学员反馈都很不错,第二期准备要开始了,可以来观摩观摩哦
        有底层原理(包括事件传递机制原理,tableview原理,nav原理等等),性能优化,多线程处理,死锁问题,富文本原理,源码解读,算法和数据结构,第三方源码级解析,离屏渲染,网络底层,IM,实时音频,直播技术,网络缓存层设计,数据持久层设计,C弱化,RAC,Swift,ARKit,框架思维等等技术
      • 8ee17f07f741:你好,我这边报错。main.m:9:9: fatal error: 'UIKit/UIKit.h' file not found,怎么解
        zhonglaoban:-framework 少了UIKit

      本文标题:OC:Clang编译器编译OC代码

      本文链接:https://www.haomeiwen.com/subject/nlppqttx.html