Arch:すべての警告はエラーと見なされますか?

Arch:すべての警告はエラーと見なされますか?

makeドライバをダウンロードしようとしていますが、xf86-ビデオ-armsoc、アーチLinuxで。ただし、構成により、makeドライバーはすべてのコンパイラー警告をエラーとして処理するため、ドライバーをコンパイルできません。この機能を無効にする方法はありますか?

発生したエラーを読み、すべて警告のように見えます。 、およびstorage of 's' isn't knownのようなものはimplicit declaration of functionすべて無視できるものです。nested extern declarationunused variable

ベストアンサー1

-Werrorエラーである警告は通常、コンパイラに渡された結果です。開発者はまだ開発中であるか、ミッションクリティカルなソフトウェアにいるので、バグがどれだけ多く、バグが残っているかを確認するために、これを意図的に行うことができます。

とにかく、どこであるかを調べる必要があります-Werrorgrep素晴らしいツールです。grep -lr Werror .ドライバのソースコードディレクトリにある間、単語全体を再帰的にgrepします(先行ダッシュは重要ではありません)。

その後、各ファイルで簡単な削除スイッチを使用できますsed -i 's@-Werror@@g' file

探すhttps://github.com/endlessm/xf86-video-armsoc/blob/master/src/Makefile.amERROR_CFLAGSで明示的な設定を見た-Werrorので、開発者は致命的ではない警告もキャッチすることにしました。

残念ながら、-Werrorコンパイラは非常に多様であるため、リリースソフトウェアを構築するときには役に立たず、迷惑です。暗黙的な関数宣言や互換性のないポインタ/ストアサイズの不一致などの簡単なことには注意が必要ですが、コードが一般的で許容される標準に準拠するようにすることは開発者の仕事です。

おすすめ記事