[Xcode]Xcode中的编译过程以及编译器

本文详细介绍了Xcode的编译过程,包括预处理、编译、汇编和链接四个阶段,以及Build phases、Build rules和Build settings在编译中的作用。此外,还提及了工程文件.pbxproj的重要性。最后,简要讨论了LLVM编译器在Xcode中的应用。
摘要由CSDN通过智能技术生成

编译过程

基本的编译过程分为四个步骤:
  1. 预处理(Pre-process):把宏替换,删除注释,展开头文件,产生 .i 文件。
  2. 编译(Compliling):把之前的 .i 文件转换成汇编语言,产生 .s文件。
  3. 汇编(Asembly):把汇编语言文件转换为机器码文件,产生 .o 文件。
  4. 链接(Link):对.o文件中的对于其他的库的引用的地方进行引用,生成最后的可执行文件(同时也包括多个 .o 文件进行 link)。
然后通过解析 xcode 编译 log,可以发现 xcode 是根据 target 分开进行编译的。
编译过程的控制,在 xcode 中可以通过 Build phases,Build settings以及 Build rules来进行控制。
  • Build phases:主要是用来控制从源文件到可执行文件的整个过程的,所以应该说是面向源文件的,包括编译哪些文件,以及在编译过程中执行一些自定义的脚本什么的
  • Build rules:主要是用来控制如何编译某种类型的源文件的,假如说相对某种类型的原文件进行特定的编译,那么就应该在这里进行编辑了。同时这里也会大量的运用一些 xcode 中的环境变量
  • Build settings:则是对编译工作的细节进行设定,在这个窗口里可以看见大量的设置选项,从编译到打包再到代码签
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值