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

相关推荐
无名猿4 分钟前
map / set 完全指南:红黑树与有序容器
数据结构·c++·性能优化·stl·标准库
MicrosoftCloud7 分钟前
用户权限 02|/etc/passwd、/etc/shadow、/etc/group:三个文件讲透 Linux 用户体系
linux·运维·ubuntu·用户管理·权限·useradd
朝朝辞暮i10 分钟前
C++ 第 28 课:Lambda 表达式
开发语言·c++·算法
崽崽..13 分钟前
【Linux】ping命令刨析
linux·运维·服务器·网络
All for pursuit.18 分钟前
【回溯-3】39.组合总和
数据结构·c++·算法·leetcode
见叶之秋28 分钟前
【C++】一条双向链的诞生:手写 list 模拟实现
c++
沫璃染墨30 分钟前
《从零入门Linux系统篇(五十六):线程篇·九——生产者消费者模型:从条件变量到BlockingQueue实现》
linux·服务器·c++·驱动开发·设计模式·架构·系统架构
张小姐的猫33 分钟前
【Linux】网络编程 —— 五种IO模型
linux·运维·服务器·网络·c++·人工智能·php
程序员-Benothing34 分钟前
Shell脚本调试与最佳实践:set -eux、shellcheck实战
linux·运维·服务器
重生之小比特1 小时前
【C++进阶】02 Linux基本指令
java·数据库·c++