導航:首頁 > 源碼編譯 > 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編譯器開源協議相關的資料

熱點內容
吃雞手機國際服伺服器超時怎麼辦 瀏覽:68
努比亞Z5無命令 瀏覽:640
展示網站雲伺服器 瀏覽:870
代碼混淆器php 瀏覽:365
貝恩pdf 瀏覽:207
丙烯pdf 瀏覽:366
雲伺服器華碩 瀏覽:711
sublime3運行python 瀏覽:188
怎麼把安卓視頻傳到蘋果上面 瀏覽:81
手機拍鬼片用什麼app 瀏覽:640
爬山虎app是干什麼用的 瀏覽:505
有哪些寫給程序員的歌 瀏覽:49
成都市命令 瀏覽:993
建立系列文件夾 瀏覽:983
蘋果開機白屏帶文件夾問號 瀏覽:733
體驗服為什麼伺服器會關閉 瀏覽:41
酒店命令 瀏覽:750
中走絲線切割編程視頻 瀏覽:80
衣服壓縮袋手泵原理 瀏覽:714
通達信編程書籍 瀏覽:981