![](/img/trans.png)
[英]How best to set output directory for a CMake C++ project built by Visual Studio 2017?
[英]Set Visual Studio debugger working directory to executable output directory in CMake
Visual Studio的調試器的默認工作目錄是$(ProjectDir)
。
我真正想要的是將它設置為$(TargetDir)
(我正在運行的.exe
所在的位置)。
這個答案提供了正確的語法,所以我嘗試了以下內容:
if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
set_target_properties(${PROJECT_NAME} PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY ${PROJECT_BUILD_DIR}/Debug)
endif()
但是這個硬編碼Debug
,我不喜歡。
我在最后嘗試了$<CONFIG>
,但在Visual Studio中無效(表達式未被評估)。
我也試過$(TargetDir)
,但這不起作用。 但是如果我手動刪除變量$(TargetDir)
並將其粘貼回來,它就可以了。
如何在不對其進行硬編碼的情況下將調試器工作目錄設置為可執行輸出目錄?
這可以通過設置調試器工作目錄來完成,如下所示:
set_property(TARGET my_target PROPERTY VS_DEBUGGER_WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR})
CMAKE_CFG_INTDIR
解析為構建變量,該變量在Visual Studio中提供當前目標配置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.