我有一个由配置的项目CMake
。它有一个程序和一些共享库。
target_link_libraries
语句)。LoadLibrary
Win32 API加载。我们使用Visual Studio 2015作为CMake
目标编译器。但是从此IDE,当我在修改某些代码后启动程序(按F5键)时,仅编译程序和链接的共享库。在运行时加载的“插件”未编译,因此代码与二进制文件不匹配。
有没有一种添加“构建依赖项”的方法,即如果在执行程序之前过时了某些库,即使最后一个库没有链接它们,也应该对其进行编译?
专门为此目的提供了一个CMake命令:add_dependencies。它应该做您想要的。例:
add_executable(mainTarget SomeSource.cpp)
add_library(linkedLib SomeOtherSource.cpp)
add_library(libToBeLoaded MODULE MoreSource.cpp)
target_link_libraries(mainTarget PRIVATE linkedLib)
# This is it:
add_dependencies(mainTarget libToBeLoaded)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句