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

相关推荐
朔北之忘 Clancy几秒前
2020 年 6 月青少年软编等考 C 语言一级真题解析
c语言·开发语言·c++·学习·算法·青少年编程·题解
御承扬6 分钟前
鸿蒙原生系列之动画效果(帧动画)
c++·harmonyos·动画效果·ndk ui·鸿蒙原生
Shanxun Liao8 分钟前
CentOS 7.9 根分区 / 已经 100% 用满隐藏占用解决办法
linux·运维·centos
星马梦缘1 小时前
算法与数据结构
数据结构·c++·算法·动态规划·克鲁斯卡尔·kahn
学好statistics和DS1 小时前
命令替换(Command Substitution)详解
linux
zimoyin1 小时前
浅浅了解下0拷贝技术
java·linux·开发语言
你的冰西瓜1 小时前
C++中的array容器详解
开发语言·c++·stl
ba_pi1 小时前
每天写点什么2026-01-09-linux基础
linux·运维·服务器
wdfk_prog1 小时前
[Linux]学习笔记系列 -- 底层CPU与体系结构宏
linux·笔记·学习
Ccjf酷儿2 小时前
C++语言程序设计 (郑莉)第六章 数组、指针和字符串
开发语言·c++