cmake:生成静态库和动态库
1. 共享库和静态库优缺点
动态库
优点
- 节省空间。使用动态库生成的可执行文件占磁盘空间少;
- 资源共享。系统中只需有一份就可让多个进程使用相同的功能;
- 方便升级。接口不变的情况下,只需替换相应的库文件即可。
缺点
生成的可执行文件发布时必须将其依赖的动态库同时发布。
静态库
优点
生成的可执行文件独立执行。软件发布方便。
缺点
- 占用空间大。由于将所有的功能链接进可执行文件中,导致可执行文件占用大量磁盘空间;
- 不方便升级。升级时需要替换整个可执行文件。
2. cmake 生成静态库和动态库
动态库
add_library(hello SHARED hello.c 1.c 2.c ...)
通过关键字 SHARED,
在linux和windows上分别生成动态库:libhello.so和libhello.dll
静态库
add_library(hello STATIC hello.c 1.c 2.c ...)
通过关键字 STATIC,
在linux和windows上分别生成静态库:libhello.a和libhello.lib
参考链接:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
2019-12-23 Windows开发:窗口最大化问题