当前位置: > Linux教程 >

linux 静态链接库和动态链接库的制作

时间:2014-02-20 05:04来源:www.it.net.cn 作者:IT网
1.  自己写的头文件和静态链接库怎么在linux中gcc编译



将自己写的头文件放在在linux中建立的一个文件中,比如放在/home/a.h
使用gcc –c –I/home   a.c  编译成功后生成一个a.o文件

同理将自己编译的库文件b.a也放在一个文件夹中如 /mnt/b.a
使用gcc –o app –L/mnt a.o b.a  app为最终形成的可执行文件


2.静态库的生成

编写好静态库源文件 如 a.c
gcc –c a.c 生成a.o文件
使用ar rcs ku_lib.a a.o 则生成一个ku_lib.a的库文件

3.动态链接库的使用

动态链接库的使用不需要编译头文件
1、  先生成动态链接库

先写好库文件,libfile.c
执行命令:
gcc  -shared –fPIC –o share_lib.so libfile.c
-shared :将位置无关的代码制作成库
-fPIC :生成位置无关的代码
share_lib.so:生成的动态库名
libfile.c:库源文件

动态链接库的使用:
gcc main.c ./ share_lib.so –o app

main.c:要调用动态库中得函数的源文件
app:最终的可执行文件
share_lib.so:动态链接库
动态链接库比静态链接库使用方便在linux下
动态链接库无需编译带调用库函数的头文件的源文件;
生成后直接调用就好

程序的中代码也少
(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容