我需要构建一个库,该库将放置在存储在变量CUSTOM_OUTDIR中的自定义位置。目前,我使用以下代码来确保将库复制到其正确的位置。
ADD_LIBRARY(example MODULE example.c)
GET_TARGET_PROPERTY(FILEPATH example LOCATION)
ADD_CUSTOM_COMMAND(
TARGET example POST_BUILD
COMMAND ${CMAKE_COMMAND}
ARGS -E copy ${FILEPATH} ${CUSTOM_OUTDIR}
)
然而,这不是一个好的解决方案,因为复制是在post_build完成的,我最终得到了两个库的副本。有没有办法为example
库设置CMAKE_BINARY_DIR,以便只有一个副本保存在正确的位置?
答案 0 :(得分:8)
命令
set_target_properties(example PROPERTIES
LIBRARY_OUTPUT_DIRECTORY "${CUSTOM_OUTDIR}"
)
应该做你想做的事。我现在不在开发机前,稍后检查。