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

相关推荐
筑梦之路1 小时前
CentOS 7 安装fail2ban hostdeny方式封禁ip —— 筑梦之路
linux·运维·centos
敲上瘾2 小时前
动静态库的制作与使用(Linux操作系统)
linux·运维·服务器·c++·系统架构·库文件·动静态库
Uitwaaien542 小时前
51单片机——按键控制LED流水灯
c++·单片机·嵌入式硬件·51单片机
漫漫进阶路6 小时前
VS C++ 配置OPENCV环境
开发语言·c++·opencv
bohu836 小时前
亚博microros小车-原生ubuntu支持系列:8-脸部检测与人脸特效
linux·opencv·ubuntu·dlib·microros·亚博
hefaxiang9 小时前
【C++】函数重载
开发语言·c++·算法
小池先生9 小时前
grafana+prometheus监控linux指标
linux·grafana·prometheus
浮梦终焉9 小时前
【嵌入式】总结——Linux驱动开发(三)
linux·驱动开发·qt·嵌入式
花生树什么树9 小时前
下载Visual Studio Community 2019
c++·visual studio·vs2019·community
远方 hi9 小时前
linux如何修改密码,要在CentOS 7系统中修改密码
linux·运维·服务器