Debian の状況

Debian の状況

コンパイルされたLinuxディストリビューションはありますか?クラン/llvm? 2010年末現在、カーネルが実行されているようです。そうでない場合は、技術的な問題やライセンスの問題である可能性が高くなりますか?

ベストアンサー1

Debian の状況

この質問に対する遅い応答で@jmtdが言ったことは、Debianアーカイブで定期的に何が起こっているのか正確に一致しています。

最新のツールチェーン(コンパイラ、リンカなど)を使用してパッケージを再コンパイルし、再コンパイルに失敗すると、コンパイルに失敗したパッケージのエラーがFTBFS(「ソースからビルドできません」)アーカイブに表示されます。

これらのエラーは通常、何か悪いことが発生したことを示し、通常は重大度が高いとリストされ、「リリース重要」エラー状態が指定されます。つまり、これらのバグが解決されない場合は、新しいバージョンをリリースできません。

特に、ルーカス・ヌスバウムある種の品質評価手段として、Debianプロジェクトのアーカイブ全体をグリッドに再コンパイルしてきました。

しかし最近ではシルベスター・ルドリューそして他のDebian開発者案内済み 学生Google Summer 2012コードで代替を許可する両方GCC は Clang で提供され、libstdc++(C++ 用 GCC サポートライブラリ) はlibc++(Clang/LLVM 対応ライブラリ) で提供されます。

一つある場所Debian パッケージ全体のコンパイル結果を公開します。レポート文書化される貯水温網GCCからDebianビルドプロセスを分離するプログラムは次のとおりです。完全に完了

したがって、これらの成功した結果がどれだけサポートされているかに応じて、Debian バージョンが clang/llvm でコンパイルされることがすぐにわかります。

新しく来た人

このアップデート(2016-08-16)に基づいて、clangとllvmでコンパイルされた既存のLinuxディストリビューションの新しいバージョンがあります。OpenMandrivaLx 3.0、最終版がリリースされました。このコメントによれば、clangとllvmだけでなく、「一般的な」高最適化レベルにもコンパイルされます。そしてまたリンク時間最適化(LTO)

低温酸化

質問とこの回答の主なトピックはllvm / clangですが、公平に言えば次の点に注意してください。GCCにはLTOもあります(もっとLTOの背景)。

理論的には、LTOは最新のclang / llvmとGCCに見られるように潜在的な生成されたバイナリをより速くするだけでなく、テキストセクションのメモリ要件が少なくなります。プログラム(そしてLinuxカーネルはLTOの潜在的な受益者の1つです。)。

OpenMandriva Lx 3.0がすべてのプログラムでどのくらいのLTOを使用しているかを読むことはできませんでしたが、clang / llvm + LTOを使用することは嬉しく、人々が「一般的な」ベースのGCCを比較して対照的な複数の独立したベンチマークを実行するのを見てうれしいです。です。 、OpenMandriva Lx 3.0の非LTO最適化リリース。

おすすめ記事