如何复制dll';他在用cmake吗?
在构建解决方案时,我必须将dll复制到文件夹中。cmake的结构如下所示:如何复制dll';他在用cmake吗?,cmake,Cmake,在构建解决方案时,我必须将dll复制到文件夹中。cmake的结构如下所示: D:/src/cmakeLists.txt D:/target/runtime/bin D:/repos/stable/compiler/xyz.dll 因此,我想将xyz.dll复制到“D:/target/runtime/bin”。我在cmake中做了如下操作: add_custom_command(TARGET performance POST_BUILD COMMAND $
D:/src/cmakeLists.txt
D:/target/runtime/bin
D:/repos/stable/compiler/xyz.dll
因此,我想将xyz.dll复制到“D:/target/runtime/bin”。我在cmake中做了如下操作:
add_custom_command(TARGET performance POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
"${PROJECT_SOURCE_DIR}/libs/xyz.dll"
$<TARGET_FILE_DIR:performance>)
add_custom_命令(构建后的目标性能)
COMMAND${CMAKE_COMMAND}-E copy_如果不同
“${PROJECT\u SOURCE\u DIR}/libs/xyz.dll”
$)
但它没有复制任何dll。那么,建议我如何实现它。我对cmake不太熟悉。因此,请建议。我使用该命令来实现此目的。它在cmake生成步骤中复制文件
试试像这样的东西
configure_file("${PROJECT_SOURCE_DIR}/libs/xyz.dll" $<TARGET_FILE_DIR:performance> COPYONLY)
configure_文件(${PROJECT_SOURCE_DIR}/libs/xyz.dll“$COPYONLY)
将dll保留在原来的位置,并修改其他项目中的链接。使用find_library
。尝试运行make VERBOSE=1
并查找行copy_(如果不同…
)。它会复制到你期望的地方吗?还要注意的是,如果您的目标性能
是最新的,它将不会复制。具有相同的问题。你找到解决方案了吗?是性能目标版本吗?@swdon我忘了前面的$。你能再试一次吗?我实际上做了问题的大部分内容(我使用了copy
而不是copy\u if\u different
,而且它确实有效。感谢你在三年后尝试帮助我:)