您的位置:首页 > 编程语言 > C语言/C++

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

2014-09-09 23:56 141 查看
共享代码可以提高效率,但为了代码的安全性等原因,一般很少保留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语言