Clang 10 を使用して Debian パッケージ データベースを再構築した結果

シルベストル・ルドリュ опубликовал GCC の代わりに Clang 10 コンパイラを使用して Debian GNU/Linux パッケージ アーカイブを再構築した結果。 31014 個のパッケージのうち、1400 (4.5%) はビルドできませんでしたが、Debian ツールキットに追加のパッチを適用することで、ビルドされていないパッケージの数は 1110 (3.6%) に減少しました。 比較のために、Clang 8 および 9 でビルドした場合、ビルドできなかったパッケージの数は 4.9% のままでした。

ビルド実験では、次の原因によるクラッシュによって引き起こされる 250 の問題に焦点を当てました。 エラー Qmake および 177 の問題、 関連 ライブラリ内でさまざまなシンボルを生成します。 リンク時のシンボル比較エラーを警告として扱うための簡単なパッチを dpkg-gensymbols に追加し、qmake の g++ 構成ファイルを置き換えることで、約 290 個のパッケージのビルドの失敗を修正することができました。

残りから проблем、Clang でのビルド失敗につながります。最も一般的なエラーは、一部のヘッダー ファイルの欠如、型キャスト、リテラルと識別子の間のスペースの不足、バインドの問題、void 以外の関数からの値の戻りの失敗などが原因です。 、ポインタと null の順序付き比較を使用しており、定義がありません。

出所: オープンネット.ru

コメントを追加します