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 的最后边,先生成后链接)

相关推荐
2501_9411126114 分钟前
C++与Docker集成开发
开发语言·c++·算法
menge233324 分钟前
Linux网站搭建
linux·运维·网络
智者知已应修善业27 分钟前
【51单片机:两边向中间流水:即两边先点亮然后熄灭,次边的点亮再熄灭,直到最中间的两个点亮再熄灭,然后重复动作。】2023-3-4
c语言·c++·经验分享·笔记·嵌入式硬件·算法·51单片机
Bruce_Liuxiaowei32 分钟前
Kali Linux 加入 Windows 域实战指南:解决域发现与加入失败问题
linux·运维·windows
LumenL1u36 分钟前
CentOS 7/8/9 上安装 MySQL 8.0+ 完整指南
linux·mysql
梁正雄39 分钟前
linux服务-nginx原理与安装-1
linux·运维·nginx
伊卡洛斯az1 小时前
Linux veth
linux·服务器
brucelee1861 小时前
在 Linux Ubuntu 24.04 安装 IntelliJ IDEA
linux·ubuntu·intellij-idea
@卞2 小时前
ST 表相关练习题
数据结构·c++·算法
报错小能手2 小时前
C++笔记 bind函数模板
开发语言·c++·笔记