clang
clang 類似 gcc, 是一個基於 LLVM 的 compiler.
--
Google Android 目前已經全面用 clang 取代 gcc, 包含 linux kernel (+driver modules) 的編譯也是用 clang.
從 Android P 開始, libc++ 就是用 clang 編譯的 C++ 函式庫,
來取代原本用 gcc 編譯的 libstdc++.
而從 Android NDK r18 版開始, 已經將 gcc 移除,
全面使用 clang 來編譯.
而 clang 和 llvm 的關係, 可以簡單看底下這圖:
ref: gopher
原本的 詞法/語法/語意分析, 交給前端處理, 不同的程式語言, 有不同的 compiler, 都編譯成 中間碼
後, 傳給 LLVM , 這樣LLVM可以專心負責 optimization
的部分, 這是一個很棒的分工.
( wiki有介紹編譯器高材生: Chris Lattner 在 Apple 開發 LLVM 的 歷程, 而現在他去 Google Brain 專注在 深度學習 和 人工智慧 )
--
Ubuntu 安裝
sudo apt install build-essential
sudo apt install llvm
sudo apt install clang
sudo apt install lld
留言
張貼留言