5
CMAKE_BUILD_TYPE=Release
は暗黙的に-DNDEBUG
を意味しますか?CMAKE_BUILD_TYPE =リリースは-DNDEBUGを意味しますか?
そうでない場合:この意味合いが起こると予想するのは妥当でしょうか?
私はCMakeコードを以下は私のCMakeLists.txtで冗長であるかどうかを知りたい:
if (NOT CMAKE_BUILD_TYPE MATCHES Debug)
add_definitions(-DNDEBUG)
endif()
私はそれをチェックしたところ、* CMake *は '-DNDEBUG'フラグを付け加えましたが、[CMake documentation](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE)のためにまだ問題があります。 html)は、 'CMAKE_BUILD_TYPE = Debug'オプションが存在するときに' -DNDEBUG'フラグが追加されているかどうかを明示的に記述しません**。私は未確認の動作に基づいてコードを書くことを避ける方が好きです。なぜなら、将来のCMakeのバージョンでは変更される可能性があるからです(潜在的な影響は小さくなります)。 –
あなたはタイトルに=を意味しますか?私は間違いなく 'NDEBUG'を定義しない**デバッグビルドを期待しています。 – immibis
@immibis - ありがとう。もちろんそれはタイプミスでした。私は私の質問を編集しました。 +1 –