clang terminal编译OC代码

来源:互联网 发布:网络教育 统考考不过 编辑:程序博客网 时间:2024/06/05 17:35


Xcode 中代码编译器clang

想要看看clang的一片文章吗?clang here you are

简单介绍利用terminal 实现clang编译器编译OC代码的两个小方法:

一、 运行编译一段程序的方法:

1. 创建一个工程(HelloWord.m)为例

a. 打开terminal,cd 到某directory,找到搁置代码文件的目录des_dir,(或者可以$ mkdir des_dir  | cd des_dir创建一个并进去)

b. 在des_dir中 vim HelloWord.m, 创建好文件后,输入文下的程序代码。wq一下回到des_dir 下,cat HelloWord确定一下是否代码正确

当然你可以使用OS X + 鼠标等惯用操作完成找到目标目录,新建文件夹,新建.m 文本,copyCode到文本中,一气呵成。

#import <Foundation/Foundation.h>

int main(int argc,constchar * argv[])

{

    @autoreleasepool

    {

        NSLog(@"Hello, OC!");

    }

    return 0;

}


2. terminal保留在当前目录下,使用clang命令编译代码文件

a.  $ pwd  查看当前目录位置 (/Users/xw.long/Desktop/XWPro/des_dir)  $ls 查看目录文件(HelloWord.m)

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

 • $符号是终端命令提示符,不是需要输入的内容

 • -fobjc-arc表示编译器需要支持ARC特性

 • -framework Foundation表示引用Foundation框架

 • HelloWord.m为需要进行编译的源代码文件

 • -o HelloWord表示输出的可执行文件的文件名

3. 第二步孙俪完成后,生成可执行文件,既可以运行可执行文件了(HelloWord

a. 输入的命令如下:             $ ./HelloWord

b.得到输出结果:Hello,OC !



二、 Clang 命令将OC 转化为cpp(C++)源码:
1. 惨遭 一 中的方法创建一个oc源码文件.m 输入内容如下:

int main(){

    void (^blk)(void) = ^{printf("block\n");};

    blk();

    return 0;

}

2. 控制台命令是: clang -rewrite-objc 源代码文件名。

如这个地方应该输入: clang -rewrite-objc main.m,经过装换后会生成一个main.cpp 的源码文件

3.查看源码文件,

方法有很多,可以直接open main.cpp  ,或者cat main.cpp 在terminal中翻页浏览

会发现,简单的一段OC 块代码 转译为C++代码后 很冗长的一个篇章呀。





)




0 0