113

問題は、Windows で適切にコンパイルされる同じコードが、Ubuntu ではコンパイルできないことです。このエラーが発生するたびに:

cc1: warnings being treated as errors

現在、これは大きなコード ベースであり、すべての警告を修正するのは好きではありません。

警告にもかかわらず、正常にコンパイルできる方法はありますか?

4

7 に答える 7

93

確かに、どこ-Werrorに設定されているかを見つけて、そのフラグを削除します。その後、警告は警告のみになります。

于 2012-07-19T12:52:20.640 に答える
4

Linux カーネルをコンパイルしている場合。たとえば、「unused-but-set-variable」という警告を無効にしたい場合は、エラーとして扱われます。次のステートメントを追加できます。

KBUILD_CFLAGS += $(call cc-option,-Wno-error=unused-but-set-variable,)

あなたのメイクファイルで

于 2016-11-24T13:15:31.750 に答える
3

すべての役立つ提案をありがとう。コードに警告がないことを最終的に確認しましたが、sqlite3 から次の警告が返されました。

Assuming signed overflow does not occur when assuming that (X - c) <= X is always true

次の CFLAG を追加して修正しました。

-fno-strict-overflow
于 2012-07-20T10:54:11.727 に答える