![用几句话说一说CMake add_dependencies & target_link_libraries的使用区别 用几句话说一说CMake add_dependencies & target_link_libraries的使用区别](https://image.shishitao.com:8440/aHR0cHM6Ly9ia3FzaW1nLmlrYWZhbi5jb20vdXBsb2FkL2NoYXRncHQtcy5wbmc%2FIQ%3D%3D.png?!?w=700&webp=1)
简单说一说前两天学习使用CMake解决链接问题时遇到的一个问题。
对于编译时遇到的依赖问题,很多时候我们只需要一句target_link_libraries就可以搞定。
但是CMake还有另外一个command,add_dependencies。这个什么时候用呢?
一般来说用不到。用到的情况就是两个targets有依赖关系(通过target_link_libraries解决)并且依赖库也是通过编译源码产生的。这时候一句add_dependencies可以在直接编译上层target时,自动检查下层依赖库是否已经生成。没有的话先编译下层依赖库,然后再编译上层target,最后link depend target。
完。