CMAKE_VS_USE_DEBUG_LIBRARIES¶
在 3.30 版本加入。
向 Visual Studio 產生器 指示哪些組態被視為偵錯組態。這會控制 UseDebugLibraries
在 .vcxproj
檔案的每個組態中的設定。
Visual Studio 專案中的 "使用偵錯程式庫" 設定,儘管其名稱聽起來很具體,但它是一個通用指標,指示哪些組態被視為偵錯組態。在獨立專案中,這可能會影響 MSBuild 預設選擇的 MSVC 執行階段程式庫、最佳化旗標、執行階段檢查和類似設定。在 CMake 專案中,這些設定通常根據專案的規格明確產生,例如,MSVC 執行階段程式庫由 CMAKE_MSVC_RUNTIME_LIBRARY
控制。然而,UseDebugLibraries
指標對於人類和工具的參考都很有用,並且也可能影響特定平台 SDK 的行為。
將 CMAKE_VS_USE_DEBUG_LIBRARIES
設定為 true 或 false 值,以指示每個組態是否被視為偵錯組態。該值也可能是空字串 (""
),在這種情況下,CMake 不會明確加入 UseDebugLibraries
,並且 MSBuild 將使用其預設值 false
。
使用 產生器 表達式
用於每個組態的規格。例如,以下程式碼
set(CMAKE_VS_USE_DEBUG_LIBRARIES "$<CONFIG:Debug,Custom>")
表示所有後續目標都將其 "Debug" 和 "Custom" 組態視為偵錯組態,而將其其他組態視為非偵錯組態。
此變數用於初始化所有目標在建立時的 VS_USE_DEBUG_LIBRARIES
屬性。它也會透過呼叫 try_compile()
命令傳播到其測試專案中。
如果未設定此變數,則 VS_USE_DEBUG_LIBRARIES
屬性將不會自動設定。如果未設定該屬性,則 CMake 會使用啟發式方法產生 UseDebugLibraries
,以判斷哪些組態是偵錯組態。請參閱政策 CMP0162
。