linux-静态库制作与使用

news/2024/11/24 11:53:20/

 创建2个目录进行创建与使用的演示

创建静态库

准备源文件与头文件

查看所有源文件与头文件

 将源文件编译.o文件,然后将.o文件打包为静态库

gcc -c mymath.c -o mymath.o -std=c99
gcc -c myprint.c -o myprint.o -std=c99

ar指令:打包多个.o文件为静态库 

ar -rc libhello.a  mymath.o myprint.o

ar指令打包多个.o文件--->形成以lib开通.a结尾的静态库文件

利用make快速编译并且打包.o文件。

将头文件与静态库打包到一个目录中

使用静态库

让我们将mklib中的hello目录拷贝到uselib中。这其实就是将我们写的库发给别人用,别人只能看见我们的.o文件无法查看我们的原代码。

来到uselib目录中。

编辑一份拥有main()主函数的源文件。

使用库方法一 

将.头文件放到,默认重新寻找头文件路径中路径--->/usr/include/  

将静态库文件放到标准库文件目录下----> /lib64/

 编译main.c源文件,执行-l(小写L)选项指明使用的库文件,头文件会主动再usr/include搜索,但是库文件不会,主要手动指明。

这里指明的时候只需要lib后的名字,并且不要带后缀.a 

 

 但是我们不要将直接将没经大量检验的头文件与库函数直接放到系统目录中,会污染系统头文件与库。毕竟人家的库函数经过数千遍的洗礼,得到的安全稳定的库。

所以我们使用另一个方法。

使用库方法二

刚刚我们再uselib得到目录,而需要的头文件和库都在里面,在编译的时候其实就可以直接使用该库的头文件。

编译main.c源文件的时候添加选项-L ;-I(大写的i) ;-l(小写的L)  

-L:指明库函数路径

-I(大写的i):指明头文件搜索路径 

-l(小写的L):指明库名称不要加lib前缀与.a后缀 

别忘了 先删除系统库目录和头文件我们写的垃圾文件。

还有其他方法但是我们力推第二种方法,不会污染系统库目录与系统头文件目录。

 


http://www.ppmy.cn/news/145560.html

相关文章

2024系统分析师论文模版-《论需求分析方法及应用》

论需求分析方法及应用 需求分析是提炼、分析和仔细审查已经获取到的需求的过程。需求分析的目的是确保所有的项目干系.人(利益相关者)都理解需求的含义并找出其中的错误、遗漏或其它不足的地方。需求分析的关键在于对问题域的研究与理解。为了便于理解问题域,现代软…

用好这三个技巧,谷歌广告投放就可以高效获取B2B客户!

大家都知道,B2B领域的企业在谷歌广告投放上具有很大的挑战性,但谷歌又是海外客户搜索产品和服务的主要平台之一,如果我要做B2B的谷歌投放,应该注意哪些点才能提高我的广告效果?东哥今天就给大家分享几个小技巧&#xf…

在Centos7.9中安装postgresql15最新版本_参考官网说明安装---PostgreSQL工作笔记002

现在我要实现利用nifi同步,postgresql中的增量数据,也就是如果postgresql中出现增删改数据的时候,数据要自动同步到我们远程的mysql数据库中. 又难到我了...首先:去安装postgresql在centos7.9中,之所以在centos7.9中又安装了一遍,因为,我的大体思路,是利用postgresql的逻辑复制…

系统架构设计师笔记第1期:软件架构的定义和分类

软件架构是指在设计和开发软件系统时所采用的组织结构和原则。它描述了软件系统的各个组成部分之间的关系、职责和行为方式,以及系统与外部环境的交互方式。 软件架构关注的是软件系统的整体结构和组织方式,而不仅仅是单个模块或组件的设计。它提供了一…

凭借扫地机器人,科沃斯能“扫出”舒适区吗?

扫地机器人到底是不是智商税? 关于这个问题,不同的人有不同的观点。在小红书上搜索“扫地机器人”可以获得6万多篇笔记,有种草的,也有排雷的。但毋容置疑的是,已经有越来越多的消费者开始尝试扫地机器人,这…

智能清洁新消费的2021:不止营销造势,还有实力突围

文 | 陈小江 来源 | 螳螂观察 2021年,国货智能清洁新消费品牌驶入发展快车道。 一方面,近两年因疫情影响,“宅经济”加速,人们宅家不出的日子变多了,再加上“懒人经济”盛行、健康意识增强,人们对智能清…

谷粒商城十五商品详情CompletableFuture异步编排

多线程异步任务的问题 例如a,b,c三个异步任务,不是随机运行就可以,它们还有一定的关系,c需要等待a的返回结果,b不需要等待谁的结果。 当异步任务产生一些关系和顺序之后,我们要编排好它们的关系进行调用,…

哪款手推式洗地机好用?2023洗地机推荐

虽然现在市面上的洗地机层出不穷,但是无论洗地机怎么变,关于洗地机的选择看准吸力、除菌、续航、清洁力这几点就够了。因此,一款好用的洗地机必须要拥有良好的清洁力和续航时间,最好还拥有除菌等细节功能。那么下面就让我们一起来…