cmake 链接动态库命令

cmake 链接动态库命令

链接动态库命令

bash 复制代码
target_link_libraries(<target> <PRIVATE|PUBLIC|INTERFACE> <item>)
eg:
target_link_libraries(A B C) #B 和 C 被链接到A中

target:指定要加载动态库的文件的名字,该文件可以是一个源文件,动态库,可执行文件

<PRIVATE|PUBLIC|INTERFACE> item: <PRIVATE|PUBLIC|INTERFACE>设置动态库的访问权限,默认是PUBLIC: item 指的是链接的动态库的名称。

PUBLIC:在public后面的库会被link到前面的 target 中,并且里面的符号也会被导出,提供给第三方使用;

PRIVATE:在private后面的库仅会被link到前面的 target 中;

INTERFACE:在interface后面的库不会被link到前面的 target 中,只会导出符号;

动态库的链接具有传递性,如果动态库 A 链接动态库 B、C,动态库 D 链接动态库 A,此时动态库D也相当于链接动态库 B 和 C,并可以使用动态库B、C中定义的方法。

(动态链接库写在 cmakelists 的最后边,先生成后链接)

相关推荐
MonkeyKing_sunyuhua36 分钟前
国内Dockerfile的配置,提高打包速度
linux·运维·网络
盛世宏博智慧档案44 分钟前
数据追溯 + 异常预警:机柜温湿度以太网变送器应用实践方案
linux·服务器·网络
leandzgc44 分钟前
Linux动态存储管理的逻辑卷使用示例
linux·运维·服务器·逻辑卷·linux动态存储管理
fqbqrr1 小时前
2512C++,clangd支持模块
开发语言·c++
Jurio.1 小时前
Python Ray 分布式计算应用
linux·开发语言·python·深度学习·机器学习
老王熬夜敲代码2 小时前
C++中的thread
c++·笔记·面试
qq_479875433 小时前
C++ 鸭子类型” (Duck Typing)
开发语言·c++
崇山峻岭之间3 小时前
C++ Prime Plus 学习笔记033
c++·笔记·学习
Sleepy MargulisItG3 小时前
Linux 权限基本理解
linux
_F_y3 小时前
Linux:自主shell编写
linux