xcode中三种编译器的区别

在xcode中有三种编译器供我们选择,分别是GCC、LLVM GCC、LLVM compliler

三者区别

  • GCC :是一套由 GNU 开发的编程语言编译器。Linux/Unix操作系统的标准编译器。编译前端和后端皆使用GCC
  • LLVM GCC:编译前端使用GCC,后端使用LLVM
  • LLVM compliler :编译前端使用Clang,后端使用LLVM

为什么存在三种编译器

苹果公司最开始使用GCC编译器

为了实现对 Objective-C 新特性的支持,苹果公司结合LLVM改进GCC,从而衍生出了一个GCC分支,也就是LLVM GCC

由于LLVM GCC的笨重和局限性,苹果公司从零开始开发了一套自己的编译前端系统Clang,配合LLVM,就有了LLVM GCC

Clang的优势

相比GCC而言:

  • 编译速度快,占用内存小
  • 模块化设计,易于扩展,易于IDE集成
  • 错误提示人性化
  • 产出小

值得一提的是,Android NDKr18开始就已经抛弃GCC,转而采用Clang编译,Clang未来可期

本文为作者原创 转载时请注明出处 谢谢

img

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

0%