cmake target_link_libraries命令
时间: 2023-08-26 14:18:31 浏览: 117
在CMake中,target_link_libraries命令用于指定链接给定目标和/或其依赖项时要使用的库或标志。它有几种形式可以使用。
1. 最常见的格式是:
target_link_libraries(<target> <item>...)
这个命令将库或标志<item>链接到目标<target>上。
2. 可以使用以下格式指定链接库的使用范围:
target_link_libraries(<target> <PRIVATE|PUBLIC|INTERFACE> <item>... [<PRIVATE|PUBLIC|INTERFACE> <item>...]...)
这里,PRIVATE表示链接库仅适用于目标<target>自身,PUBLIC表示链接库适用于目标<target>以及其依赖项,INTERFACE表示链接库仅适用于目标<target>的依赖项。
3. 对于同时适用于目标及其依赖项的库,可以使用以下格式:
target_link_libraries(<target> <item>...)
这将链接库<item>到目标<target>及其依赖项上。
4. 对于链接给定目标及其依赖项的库,还可以使用以下格式(已弃用):
target_link_libraries(<target> <LINK_PRIVATE|LINK_PUBLIC> <lib>... [<LINK_PRIVATE|LINK_PUBLIC> <lib>...]...)
这里,LINK_PRIVATE表示链接库仅适用于目标<target>及其依赖项,LINK_PUBLIC表示链接库适用于目标<target>及其依赖项。
总结起来,target_link_libraries命令用于指定在链接目标及其依赖项时使用的库或标志。可以根据需要选择不同的格式来实现所需的链接关系。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [Cmakelist: add_library、target_link_libraries和link_directories用法](https://blog.csdn.net/wfei101/article/details/82633858)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [CMake中target_link_libraries的使用](https://blog.csdn.net/fengbingchun/article/details/128161746)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文