前往顾页
以后地位: 主页 > 精通Office > Ubuntu教程 >

Linux中的静态链接库阐发与利用根本教程

时候:2012-06-17 15:48来源:知行网www.zhixing123.cn 编辑:麦田守望者

C说话的层面上,对代码的反复操纵凡是是经由过程库(library)的体例来实现的。传统意义上的库指的是今后缀.a末端的文件。严格来讲,函数库该当分为两种:静态链接库和静态链接库,也称静态共享库。静态链接库凡是是指以.a为后缀的文件,而静态链接库则常常以.so为后缀名。

  静态链接库其实就是把一个或多个目标文件(即编译天生的.o文件)归档在一个文件中。而后,当需求利用这个静态库中的某个服从时,将这个静态库与要天生的利用法度链接在一路。

  在Linux上平台上最常常利用的归档东西是GNUtar,但是要构建静态库却不克不及利用tar,而要利用另外一个东西artarar都是归档东西,但是它们的目标是不合的。tar仅仅是用来建立归档文件(即凡是以.tar为后缀的文件)的,ar也完成上述事情,但是做了一些分外的措置,它会为被归档的目标文件中的标记建立索引,当和利用法度链接时,建立的这些索引将收受领受链接过程。

  ar的感化是把多个目标文件打包到一个归档文件中,每个目标文件都是归档文件的一个成员。被归档文件的各种属性,如文件内容。拜候权限。时候戳和具有者ID等信息也都保存在归档文件中,当从归档文件中抽取出本来的目标文件时,这些属性也都可以规复出来。除建立和抽取两种行动外,也能够对归档文件履行追加。点窜和删除等操纵。ar号令语法用法:

  ar [-]p[mod][membername] [count] archive files...

  在上述号令行语法中,archive表示的是归档文件的名字,如可以将其指定为libavi.aarchive files 指的是要操纵的归档成员,可以有多个。ar号令行上的p指代的是以下字符,它指定了ar履行何种操纵。

  d:从库中删除模块。按模块本来的文件名指定要删除的模块。如果利用了任选项v则列出被删除的每个模块。

  m:该操纵是在一个库中挪动成员。当库中如果有多少模块有不异的标记定义(如函数定义),则成员的地位依次很首要。如果没有指定任选项,任何指定的成员将移到库的最后。也可利用'a''b',或'I'任选项挪动到指定的地位。

顶一下
(1)
100%
踩一下
(0)
0%
------分开线----------------------------
标签(Tag):Linux Ubuntu 操纵体系 Unix Android fedora debian
------分开线----------------------------
颁发评论
请自发遵循互联网相关的政策法规,严禁公布色情、暴力、革命的谈吐。
评价:
神色:
考证码:点击我更换图片
猜你感兴趣