2017-11-12 18 views
4

Visual Studioのデバッガのデフォルト作業ディレクトリは$(ProjectDir)です。Visual Studioデバッガの作業ディレクトリをCMakeの実行可能な出力ディレクトリに設定します。

$(TargetDir)(ここでは.exeが実行されています)に設定してください。

This answerは正しい構文を提供しますので、私は次のことを試してみました:

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)を削除して戻し貼り付けても動作します。

デバッガの作業ディレクトリをハードコードしないで実行可能な出力ディレクトリに設定するにはどうすればよいですか?次のように

答えて

1

これは、デバッガの作業ディレクトリを設定することによって達成することができます。

set_property(TARGET my_target PROPERTY VS_DEBUGGER_WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}) 

CMAKE_CFG_INTDIRは、Visual Studioで現在のターゲット設定を提供し、ビルド変数に解決します。

関連する問題