target_link_libraries链接动态库 与静态库
时间: 2023-12-26 13:28:06 浏览: 163
静态链接库与动态链接库的区别
target_link_libraries命令用于将目标文件与库文件进行链接。可以使用该命令链接动态库和静态库。
1. 链接动态库:
```cmake
target_link_libraries(target_name PUBLIC dynamic_library_name)
```
上述命令将动态库dynamic_library_name链接到目标文件target_name中。链接动态库时,需要确保动态库已经被正确地构建和安装。
2. 链接静态库:
```cmake
target_link_libraries(target_name PUBLIC static_library_name)
```
上述命令将静态库static_library_name链接到目标文件target_name中。链接静态库时,需要确保静态库已经被正确地构建和安装。
需要注意的是,target_link_libraries命令中的PUBLIC关键字表示将库文件链接到目标文件,并将该库的PUBLIC属性传递给目标文件。这意味着,如果库文件具有PUBLIC属性,那么目标文件也将具有该属性。这在构建可执行文件时非常有用,因为可执行文件需要访问链接的库的公共接口。
阅读全文