iOS clang编译Objective-C程序

原创 2015年11月17日 21:43:12

1.简介

Clang是一个C,C++,Objective-C,Objective-C++语言的轻量级编译器。源代码发布于BSD协议下。

终端用户特色:

快速编译和较少内存占用[3]  ;有诊断功能;兼容GCC;

实用工具和应用:

基础架构模块库;可满足多样的客户需求(代码重构,静态分析,代码生成,等);允许集成到各种IDE中;使用LLVM'BSD'协议;

内部设计与实现:

一个简单的可移植的代码库;一个为C语言、Objective-C、C++、Objective-C++设计的通用的语法解析器

2.Objective-c如何用clang编译器编译运行Objective-C代码?

答案是可以的。

1.打开文本编辑工具 输入以下代码 并保存为纯文本格式

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
    @autoreleasepool
    {
        NSLog(@"Hello,world");
    }
    
    return 0;
}

保存为HelloWorld.m文件

2.接下来可以利用“终端”将HelloWorld.m文件编译成可执行文件了,具体步骤:打开终端-》cd命令进入helloworld.m文件所在目录

使用以下命令进行编译,生成可执行文件

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

文件如下图


注意:

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

2)-fobjc-arc表示编译器需要支持arc特性

3).-framework Fundation表示引用Fundation框架。

4).HelloWorld.m为需要进行编译的源代码文件

5).-o HelloWorld表示输出的可执行文件的中文名

3.生成可执行文件 就可以在终端执行该文件。输入的命令如下:

$./main

执行结果

Hello,world"

直接双击运行刚才生成的HelloWorld可执行文件,运行结果和上面可执行文件一样

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

版权声明:本文为博主原创文章,未经博主允许不得转载。

使用clang命令行工具编译链接Objective-C应用程序

Objective-C编程语言是一种面向对象的高级编程语言,可以用它编写基于Mac或者iOS系统的应用程序。 闲言少叙,下面我们创建一个Hello World程序,了解一下最基本的Objective...
  • pucker
  • pucker
  • 2012年02月24日 17:02
  • 19778

iOS 合理利用Clang警告来提高代码质量

原创Blog,转载请注明出处 blog.csdn.net/hello_hwc 欢迎关注我的iOS SDK详解专栏,这里有很多基础的文章。 http://blog.csdn.net/column/...
  • Hello_Hwc
  • Hello_Hwc
  • 2015年06月09日 12:52
  • 4411

Clang &IOS 静态代码分析工具scan-build

IOS项目和Clang项目可以借助scan-build 实现代码的静态分析,找出代码缺陷。
  • chen19870707
  • chen19870707
  • 2015年01月04日 17:08
  • 13698

iOS 终端使用Clang编译 重写观察Runtime源码

一.在终端使用Clang命令 编译(相比于Xcode运行,可以单独的编译文件并运行) 1.到要编译的工程目录 2.$ clang -fobjc-arc -framework Foundation ...
  • ZY_FlyWay
  • ZY_FlyWay
  • 2017年06月02日 17:20
  • 1018

[IOS 开发] 用多个.m文件实现一个类

假设有个类 Class A Class A的.m文件太大或者要以功能分类.可以用多个.m文件来实现. 用一个#define #define _PRINTER_DELEGATE_ACTIONS...
  • u010130947
  • u010130947
  • 2016年01月27日 09:54
  • 1041

iOS——LLVM、Clang浅析

我们在iOS调试中经常会看到Clang这个,那么Clang到底是什么呢?我们来简单了解一下。       Clang是一个C、C++、OC语言的轻量级编译器。源代码发布于BSD协议下。Clang是由C...
  • CHENYUFENG1991
  • CHENYUFENG1991
  • 2015年10月24日 20:52
  • 5182

深入剖析 iOS 编译 Clang / LLVM

http://www.starming.com/index.php?v=index&view=107 前言 iOS 开发中 Objective-C 和 Swift 都用的是...
  • vincentiss
  • vincentiss
  • 2017年01月19日 17:05
  • 2434

深入剖析 iOS 编译 Clang / LLVM

http://www.starming.com/index.php?v=index&view=107 前言 iOS 开发中 Objective-C 和 Swift 都用的是...
  • vincentiss
  • vincentiss
  • 2017年01月19日 17:05
  • 2434

Ubuntu系统下通过Clang编译器编写Objective-C

Objective-C作为Apple的first-class编程语言,在很长一段时间内都得到大量开发者的追捧。其中,Objective-C对C语言的完全兼容、灵活性以及OOP特性,使得它成为一门十分优...
  • zenny_chen
  • zenny_chen
  • 2016年09月11日 23:39
  • 2218

如何在linux上构建objective-c程序

objective-c不是
  • mydo
  • mydo
  • 2014年06月27日 13:54
  • 4700
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS clang编译Objective-C程序
举报原因:
原因补充:

(最多只允许输入30个字)