gcc/g++/clang/cl编译器

IDE: 现在的IDE把编译器集成进来了,包括代码编辑器+编译器。

GNU:GNU's NOT UNIX,鄙视UNIX不开源)

GCC----GNU Compiler Collection

即GUN编译器集合,包括gcc和g++编译器,它可以编译C、C++、JAV、Fortran、Pascal、Object-C、Ada等语言。

gcc是GCC中的GUN C Compiler(C 编译器)
g++是GCC中的GUN C++ Compiler(C++编译器)

是GNU项目的关键部分,亦是自由的类Unix及苹果电脑Mac OS X 操作系统的标准编译器。GCC(特别是其中的C语言编译器)也常被认为是跨平台编译器的事实标准。

gcc调用了C compiler,而g++调用了C++ compiler

gcc和g++的主要区别

  1. 对于 .c和.cpp文件,gcc分别当做c和cpp文件编译(c和cpp的语法强度是不一样的)

  2. 对于 .c和.cpp文件,g++则统一当做cpp文件编译

  3. 使用g++编译文件时,g++会自动链接标准库STL,而gcc不会自动链接STL

Clang

一个C、C++、Objective-C和Objective-C++编程语言的编译器前端。包括Clang前端和Clang静态分析器等。[3]
它采用了底层虚拟机(LLVM)作为其后端,目标是提供一个GNU编译器套装(GCC)的替代品。苹果公司的赞助支持下进行开发,而源代码授权是使用类BSD的伊利诺伊大学厄巴纳-香槟分校开源码许可。
兼容GCC,也是跨平台。

cl.exe

cl.exe是Microsoft C/C++编译器(因此也叫VC++ 编译器),只能在支持Microsoft Visual Studio 的操作系统中运行

还记得在VS安装后会给项目配置lib,include,dll库的目录。那么系统如何去根据目录去找这些文件?
需要将这些文件路径放到系统的path变量里-----系统默认查找的范围。所以报错"cl.exe没找到",大概率就是这里path没设置好!!!(因为装了VS就自带了cl.exe编译器)

总结

Linux系统及跨平台用GNU
windows用cl,编译内存占用小。

另外,还有GCC在windows平台的移植版本,Ming-W64和 Cygwin。其中MingW-64是真正的GCC移植,而cygwin只是提供一个类unix的环境内部是原生的GCC。

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值