CMAKE_VS_USE_DEBUG_LIBRARIES

在版本 3.30 中新增。

用於告知 Visual Studio Generators 哪些組態被視為偵錯組態。此變數可控制 UseDebugLibraries 在每組 .vcxproj 檔案中的設定。

Visual Studio 專案中的「Use Debug Libraries」設定,儘管其名稱聽起來很明確,但它是一個用於表示哪些組態被視為偵錯組態的通用指標。在獨立專案中,它可能會影響 MSBuild 預設選取的 MSVC 執行時間程式庫、最佳化標記、執行時間檢查,以及類似的設定。在 CMake 專案中,這些設定通常可根據專案的規範明確產生,例如,MSVC 執行時間程式庫會受 CMAKE_MSVC_RUNTIME_LIBRARY 控制。不過,UseDebugLibraries 指標可用於供人類和工具參考,也可能會影響特定平台 SDK 的行為。

CMAKE_VS_USE_DEBUG_LIBRARIES 設定為 true 或 false 值,以指出每組組態是否被視為偵錯組態。此值也可以是空字串 (""),如果是這種情況,CMake 將不會明確加入任何 UseDebugLibraries,而 MSBuild 將使用其預設值 false

使用 generator expressions 進行每個組態規格說明。例如,下列程式碼

set(CMAKE_VS_USE_DEBUG_LIBRARIES "$<CONFIG:Debug,Custom>")

指出後面的所有目標會將「偵錯」和「自訂」組態視為偵錯組態,並將其他組態視為非偵錯組態。

此變數用於初始化 VS_USE_DEBUG_LIBRARIES 屬性,並在各目標建立後予以套用。它也會透過呼叫 try_compile() 命令傳遞進其測試專案。

如果此變數未設定,則 VS_USE_DEBUG_LIBRARIES 屬性將不會自動設定。如果該屬性未設定,則 CMake 會透過啟發式來產生 UseDebugLibraries,以判斷哪些組態是偵錯組態。請參閱政策 CMP0162