码迷,mamicode.com
首页 > 编程语言 > 详细

c语言共享代码之静态库与动态库

时间:2014-09-10 00:28:49      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:c语言      

共享代码可以提高效率,但为了代码的安全性等原因,一般很少保留c文件,而是通过将c文件编译成 .o文件,

通过共享h文件和.o文件来实现共享代码。


多个.o文件管理起来比较麻烦,如果把这些文件打包成一个库,通过链接库来调用里面的函数是一种常用的方法。

一般分为静态库(存档)和动态库。



创建存档



存档是静态库,形式为libxxx.a  。可以用ar命令来创建存档  

ar -rcs  libxxx.a   a.o b.o ......

此时将a.o 和 b.o 打包在libxxx.a的静态库中



使用:


<1>将libxxx.a放入标准目录中

此时编译时,不用指定库文件的路径    gcc -lxxx 即可链接该库


<2>将libxxx.a放入自己设定的目录中

此时编译时,需要指定库目录   gcc -L /路径/   -lxxx






创建动态库




gcc -shared x.o   -o    libxxx.so (linux或unix)  
                                   libxxx.dylib (mac)



使用方法同静态库。










 




c语言共享代码之静态库与动态库

标签:c语言      

原文地址:http://blog.csdn.net/wangxiaobupt/article/details/39163589

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!