【发布时间】:2017-01-01 07:04:55
【问题描述】:
我不知道如何在 Visual Studio 中使用 Cmake 配置多种构建类型。
例如,在Visual Studio中选择debug时,我需要将*d.dll复制到${CMAKE_BINARY_DIR}/rundir/debug/bin,而在Visual Studio中选择release时,我需要复制@ 987654323@转${CMAKE_BINARY_DIR}/rundir/release/bin。
谁能告诉我该怎么做?
【问题讨论】:
-
您是指成功后构建 意义上的复制 还是实际的安装 步骤?你知道吗,你可以使用生成器表达式来指定依赖于构建类型的位置?
-
DLL 是另一个目标的产品吗?
-
。我找到了解决方案。我在 cmake 中使用 Visual Studio 的 $(configuration) 变量,如下所示: add_custom_command(TARGET obs POST_BUILD COMMAND if $(ConfigurationName) == Debug ( xcopy /y /d "$(QTDIR)\\bin\\Qt5WebKitWidgetsd.dll" " $(SolutionDir)rundir\\$(Configuration)\\bin\\64bit" \n ) else (//做点什么)
-
您可以将其添加/编辑到您的问题中以稍微改进它。您的解决方案只有一个问题:它不独立于平台,也不以 VS-/MSBuild 为中心。我已经使用 CMake 的平台抽象发布了一个答案。
标签: visual-studio dll cmake