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

相关推荐
怪我冷i几秒前
win11使用minikube搭建K8S集群基于podman desktop( Fedora Linux 43)
linux·kubernetes·ai编程·ai写作·podman
本贾尼2 分钟前
VMware的Ubuntu虚拟机显示网络有限线缆已被拔出的问题以及解决方法
linux·运维·ubuntu
石像鬼₧魂石4 分钟前
Cobalt Strike(简称 CS)专业的红队安全测试工具
linux·windows·安全·ubuntu
oMcLin11 分钟前
如何在 Linux 上的 aaPanel 中使用 Docker 部署 WordPress 博客:从配置到上线一站式教程
linux·运维·docker
Ralph_Y14 分钟前
C++数据库操作
开发语言·数据库·c++
酬勤-人间道14 分钟前
CAD 曲线切割 3D 曲面:坡面 / 开挖模型的开挖 - 填埋精准计算解决方案
c++·计算机·cad·布尔计算·曲线切割·工业级解决方案·岩体
chen_mangoo18 分钟前
Android10低电量无法打开相机
android·linux·驱动开发·嵌入式硬件
tianyuanwo19 分钟前
Linux 系统日志完全指南:从 syslogd 到 rsyslog 的深度解析
linux·运维·syslog·rsyslog
pengdott20 分钟前
Linux用户态与内核态的深度剖析
linux·运维·服务器
姚青&28 分钟前
三.文件处理命令-文件查看
linux·运维·服务器