Linux动态库/静态库创建与使用

本文详细介绍了在Linux系统中如何创建和使用静态库与动态库。对于静态库,步骤包括:编写源文件、创建目标文件、打包成库、拷贝到系统库目录以及在其他文件中使用。对于动态库,需要生成目标文件并添加-fpic选项,然后创建动态库,最后在编译程序时使用-L和-l选项链接动态库。
摘要由CSDN通过智能技术生成

静态库创建过程:

1编写文件 开始连接

       gcc  -c mylib0.c  -o mylib0.o

2将目标文件加入库中

   ar cqs  libmylib0.a mylib0.o

3、将库文件拷贝到/usr/lib

     sudo mv libmylib0.a /usr/lib

4、创建头文件 mylib0.h

5、在其他文件中使用库

6、连接静态库

    注意gcc默认只连接libc库,故需要使用 -I添加库

    gcc    test.c  -o test  /usr/lib/libmylib0.a

   *.在程序中使用静态库
 (1)如果是标准C语言库我们可以不指定其库路径和库名称
(2)如果静态库处于/lib或/usr/lib下
gcc -o test test.c /usr/lib/libm.a 或 gcc -o test test.c -lm
他们的效果相同。-lm意味着命名为libm.a或libm.so的文件(注意Linux下的库文件都要以lib开头)。
(3)如果要指定静态库所在的路径
可以gcc test.c -L/usr/lib -lm

动态库:

1>首先生成目标文件,但是此时要加编译器选项-fpic和链接器选项-shared

gcc -fpic  -c  add.c

gcc -fpic  -c  sub.c

生成中间文件add.o和sub.o

2>其次生成动态库

gcc  -shared –o  libtiger.so  add.o sub.o

使用动态链接库

在编译程序时,使用动态链接库和静态库是一致的,使用”-l库名”的方式,在生成可执行文件的时候会链接库文件。

1>使用命令:

   gcc -o  main  main.c -L  ./  -ltiger

引用:http://blog.chinaunix.net/uid-25885064-id-3066814.html

            http://blog.csdn.net/tigerjibo/article/details/6992531

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值