前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C_C++_静态库_动态库的制作和使用

C_C++_静态库_动态库的制作和使用

作者头像
IOT物联网小镇
发布2021-05-13 11:37:49
9700
发布2021-05-13 11:37:49
举报
文章被收录于专栏:IOT物联网小镇IOT物联网小镇

这篇文章主要是视频教程的辅助文档,把其中的一些重要的内容放在这里,强化一下印象,更好的理解教程内容。

为什么要写这个教程?

这个应用模型是我们在开发过程中经常使用的,例如:作为一名资深程序员,你需要为公司的应用开发工程师提供一个轮子:modbus通讯库。通过阅读modus协议之后,你可以手动实现这个库,你也可以在一些第三方的开源软件(比如:libmodbus)的基础上进行简单的修改,更快速的搞定工作。

如果你选择了后面这种做法,在libmodus库的外面再包裹一层你定义的API函数就可以输出以你的名字命名的库libNB.so,然后提供给应用开发人员。

但是在你的libNB.so中一定要静态链接libmodbus库,这样就只需要提供一个libNB.so就可以了(.h头文件当然是必须的),应用开发人员就会惊叹:大牛就是大牛,这么快就搞定了!

相反地,如果你动态链接libmodbus库,这样你就得提供2个文件给应用开发人员:libmodbus.so和libNB.so,这样就暴露了你偷懒的高尚品德。

这个教程就是来演示这个编译和链接过程。

当然,也顺带着介绍一些make+Makefile, cmake, VS2017等相关知识。

视频链接

这里有相关的视频说明:

https://www.bilibili.com/video/BV19t4y1e7YD?from=search&seid=2569462564675483069

教程中包含的内容

1. Linux平台下

动态库、静态库的编译和使用;

动态库和静态库的间接使用;

使用make + Makefile 来编译/构建动态库、静态库、应用程序;

使用cmake来编译/构建动态库、静态库、应用程序。

2. Windows平台下

动态库、静态库的编译和使用;

动态库的导出机制;

使用cmake+VS2017来编译/构建动态库、静态库、应用程序。

3. 大概就是这个样子

视频演示步骤

1. Linxu平台

分别演示make + Makefile 和 cmake 来完成下面的操作:

(1)libA输出动态库,libB输出动态库,编译可执行程序。

(2)libA输出静态库,libB输出动态库,编译可执行程序。

2. Windows平台

演示用cmake得到VS项目,然后完成下面操作:

(1)libA输出动态库,libB输出动态库,编译可执行程序。

(2)libA输出静态库,libB输出动态库,编译可执行程序。

(3)你还可以自己去测试剩下的排列组合。。。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IOT物联网小镇 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档