現在 Fedora Linux 主要使用 GCC 作為默認的系統編譯器,除非是出現上游項目只支持 LLVM/Clang 這種特殊的情況。但是,在 Fedora 上為軟件打包的開發者可以自行決定在值得的情況下改用 LLVM Clang 來構建一個特定的軟件包。
近日,Jeff Law 和 Tom Stellard(LLVM 的經理,受雇于 Red Hat)已經為 Fedora 35 制定了一個編譯器政策的新變化。該提議允許開發者選擇用 Clang 構建他們的軟件包,即使上游項目支持 GCC。同時,即使上游項目不支持 GNU Compiler Collection,該提案也允許用 GCC 來構建軟件包。對于一個特定的軟件包來說,使用哪種編譯器的決定權在此次提議中將留給了開發者,讓他們使用自己的技術判斷。
這個提議將保留 GCC 作為默認的系統編譯器,但對于那些想要使用 LLVM Clang 的人來說,他們可以選擇在 LLVM/Clang 下更快、更優化地構建代碼。對于一些特定的工作負載而言,與 GCC 相比,使用 LLVM/Clang 可以獲得更好的運行時性能。這類似于英特爾的 Clear Linux 會根據特定的軟件包選擇性地使用 GCC 或 Clang,以提供更好的性能。除此之外,還有一些安全特性和其他編譯器特性也是一些開發者對 LLVM 感興趣的重要因素。
Fedora 工程和指導委員會目前還沒有評估這個編譯器政策的變化,對這個 Fedora 35 提案感興趣的用戶可以通過 Fedora Wiki 了解更多。
本文地址:https://www.oschina.net/news/138993/fedora-35-more-llvm-clang