今日のUbuntu 22.04アップデートはClangコンパイラを壊すようです

今日のUbuntu 22.04アップデートはClangコンパイラを壊すようです

Ubuntu 22.04 マシンに今日のアップデートをインストールした後、Clang でのコンパイルが失敗します。標準ヘッダー ファイルが見つかりません。例:evaluate.cpp:19:10: 致命的なエラー: 'algorithm' ファイルが見つかりません。Clang コンパイルをサポートする 2 つの異なるアプリケーション (例:https://github.com/official-stockfish/Stockfish) と 2 つの異なるマシンでテストしました。

編集: 後で更新履歴を確認します (今は時間がありません)。更新中に、パッケージ「cpp-12」がインストール/更新されているのを確認しました。これはおそらく gcc-12 であり、Clang でも使用されているいくつかのヘッダー ファイルが混在している可能性があります。単なる推測です...

編集2: その間、cpp-12 を削除しました (これにより nvidia-dkms パッケージも削除されました) が、うまくいきませんでした。Clang はまだ標準ヘッダーを見つけられません。

編集3: g++-12 をインストールしたら成功しました。Clang コンパイルが再び動作するようになりました。

答え1

g++-12 をインストールすると、libstdc++-12-dev もインストールされ、問題が解決するようです。

ただし、clang-14 は libgcc-11-dev と libstdc++-11-dev に依存しているため、なぜこれが機能するのかはわかりません。

答え2

Stack Exchangeの回答のクロスポストに関するポリシーは見つかりませんでした(少しここ)ですが、この答えはここにありますこれは実際に質問に対する直接的な答えです。編集する可能性があるため、コピーして貼り付けることはしません。また、2 つの異なる場所で編集したくないからです。

答え3

gcc-12 と cpp-12 を削除し、その後 autoremove を実行すると解決しました。ただし、これは完全な解決策ではありません。

関連情報