Chinaunix首页 | 论坛 | 博客
  • 博客访问: 969983
  • 博文数量: 109
  • 博客积分: 1751
  • 博客等级: 上尉
  • 技术积分: 1817
  • 用 户 组: 普通用户
  • 注册时间: 2011-05-31 22:37
文章分类

全部博文(109)

文章存档

2014年(9)

2013年(21)

2012年(48)

2011年(31)

分类: LINUX

2012-02-10 15:50:08

1,如何生成静态库
静态库只是一堆object对象的集合,使用ar命令可以将.o文件打包成.a静态库。
假设gcc已经生成了a.o, b.o, c.o,使用下面的命令即可生成libmylib.a
#ar rcs libmylib.a a.o b.o c.o

2,如何生成动态库
动态库的生成由gcc直接生成。
假设a.c, b.c两个文件,通过下面的命令可生成libmylib.so
#gcc a.c b.c -o libmylib.so --shared

3,如何使用库
gcc中关于库的参数有:
-L  指定搜寻库的目录
      如指定当前目录 gcc -L .
-l    指定要链接的库的名称
      加入库的名称是libmylib.a,则gcc -l mylib,即去头去尾。
--static  组织在链接时使用动态库
--shared 生成动态库
--static-libgcc  链接静态libgcc库
--shared-libgcc 链接动态libgcc库

可见对动态库和静态库的使用方法是一样的,同一个库如果同时存在动态库和静态库,优先链接动态库,除非使用--static强制使用静态库。

阅读(20175) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~