您的位置:首页 > 其它

gcc中关于静态库和动态库使用 -转载

2014-11-27 23:29 330 查看
摘自:http://blog.chinaunix.net/uid-25871104-id-3069931.html

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强制使用静态库。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: