导航:首页 > 源码编译 > clang编译器开源协议

clang编译器开源协议

发布时间:2023-08-09 16:01:15

Ⅰ c语言编程的平台是什么

c语洞芹言编程的平台是:

1、GCC,GNU组织开发的开源免费的编译器;

2、MinGW,Windows操作系统下的GCC;

3、Clang,开源的BSD协议的基于LLVM的编译银晌器;

4、Visual C++ :: cl.exe,Microsoft VC++自带的编译器。

(1)clang编译器开源协议扩展阅读

选择开发平台注意事项

一、windows

开发环境:visual studio

特点:集成开发环境、简单易用、完整的工具集

缺点:需要授权(也有免费版)体积庞大、无法学习到背后工程代码组织情况、不利于初学者掌握代码编译、链接过程、工程管理

二、unix 或者类unix (包过aix,open solaris ,*bsd, linux)

开发环境:编译工具 gcc、clang ...等等

代码编辑器:vim、emacs等

工程组织:make,CMake

特点:操作系统集成很多工具,所有的工具几乎开源且免费、短小精悍、功能强大

缺点:需要自己动手搭建开发环境、熟悉编译工具、

熟悉编辑器操作、熟悉类unix操作系统的操作。

入门门槛高需要在命令模式下使用脚本、make等工具完成开发工作纳搏毕

Ⅱ Clang 比 GCC 编译器好在哪里

编译速度更快、编译产出更小、出错提示更友好。尤其是在比较极端的情况下。

两年多前曾经写过一个Scheme解释器,词法分析和语法解析部分大约2000行,用的是Boost.Spirit——一个重度依赖C++模版元编程的框架。当时拦姿孝用g++ 4.2编译的情况是:

1.编译速度极慢:完整编译一次需要20分钟

2.编译过程中内存消耗极大:单个g++实例内存峰值消耗超过1G
3.中间产出物极大:编译出的所有.o文件加在一起大约1~2G,debug链接产物超过200M
4.编译错误极其难以理解:编译错误经常长达几十K,基本不可读,最要命的是编译错误经常会长到被g++截断,看不到真正出错的位置,基本上只能靠裸看代码来调试
这里先不论我使用Spirit的方式是不是有问题,或者Spirit框架自身的问题。我当时因为实在忍受不了g++,转而尝试clang。当时用的是clang 2.8,刚刚可以完整编译Boost,效果让我很满意:
1.编译速度有显着提升,记得大约是g++的1/3或1/4
2.编译过程中的内存消耗差别好像不大
3.中间产出物及最终链接产物,记得也是g++的1/3或1/4
4.相较于g++,编译错误可读性有所飞跃,至少不会出现编译错误过长被截断的问题了
当时最大的缺点是clang编译出的可执行文件无法用gdb调试,需要用调试器的时候还得用g++再编译一遍。不过这个问题后来解决了,我不知道是clang支持了gdb还是gdb支持了clang。至少我当前在Ubuntu下用clang 3.0编译出的二进制文件已经可以顺利用gdb调试了册羡。

最后一点,其他同学也有讲到,就是Clang采用的简稿是BSD协议。这是苹果资助LLVM、FreeBSD淘汰GCC换用Clang的一个重要原因。

Ⅲ 适合win10系统的c语言编译器

桌面操作系统

对于当前主流桌面操作系统而言,可使用 VisualC++、GCC以及 LLVM Clang 这三大编译器。

Visual C++(简称 MSVC)只能用于 Windows 操作系统;GCC 和 LLVM Clang除了可用于Windows操作系统之外,主要用于 Unix/Linux操作系统。

像现在很多版本的 Linux 都默认使用 GCC 作为C语言编译器,而像 FreeBSD、macOS 等系统默认使用 LLVM Clang 编译器。由于当前 LLVM 项目主要在 Apple 的主推下发展的,所以在 macOS中,Clang 编译器又被称为 Apple LLVM 编译器。

MSVC 编译器主要用于 Windows 操作系统平台下的应用程序开发,它不开源。用户可以使用 Visual Studio Community 版本来免费使用它,但是如果要把通过 Visual Studio Community 工具生成出来的应用进行商用,那么就得好好阅读一下微软的许可证和说明书了。

而使用 GCC 与 Clang 编译器构建出来的应用一般没有任何限制,程序员可以将应用程序随意发布和进行商用。

MSVC 编译器对 C99 标准的支持就十分有限,加之它压根不支持任何 C11 标准,所以本教程中设计 C11 的代码例子不会针对 MSVC 进行描述。所幸的是,Visual Studio Community 2017 加入了对 Clang 编译器的支持,官方称之为——Clang with Microsoft CodeGen,当前版本基于的是 Clang 3.8。

也就是说,应用于 Visual Studio 集成开发环境中的 Clang 编译器前端可支持 Clang 编译器的所有语法特性,而后端生成的代码则与 MSVC 效果一样,包括像 long 整数类型在 64 位编译模式下长度仍然为 4 个字节,所以各位使用的时候也需要注意。

为了方便描述,本教程后面涉及 Visual Studio 集成开发环境下的 Clang 编译器简称为 VS-Clang 编译器。

嵌入式系统

而在嵌入式系统方面,可用的C语言编译器就非常丰富了,比如:

阅读全文

与clang编译器开源协议相关的资料

热点内容
名片开发源码 浏览:333
如何买便宜的云服务器 浏览:773
linux的命令提示符 浏览:979
机器人焊接手柄编程入门教程 浏览:652
方舟怎么进入之前进去的服务器 浏览:809
家有萌宝解压 浏览:929
linuxc一站式学习pdf 浏览:20
奇思妙想pdf 浏览:991
租用裸金属服务器需要什么资质 浏览:635
程序员熬夜习惯 浏览:203
剑网三文件夹越来越大怎么办 浏览:413
提示没有ads编译器 浏览:375
androidgson工具类 浏览:14
爬取文件夹内多个excel表格 浏览:341
牙齿分割算法创新点 浏览:813
liunix编译 浏览:833
安卓rsa接口参数加密 浏览:272
三星服务器停止运行是怎么回事 浏览:58
phpmysqli删除数据 浏览:59
安卓虚拟机黑屏什么原因 浏览:767