红联Linux门户
Linux帮助

Linux下动态库的建立

发布时间:2016-11-30 10:29:25来源:linux网站作者:goodman_liqifei
我们讨论了Linux下静态库的建立和使用(http://www.linuxdiyf.com/linux/26445.html),现在我们将讲述一下动态库的建立和使用。
 
首先还是说一下规则
动态库的创建:
gcc  -shared –fPIC –o 库名.so 源文件.c
动态库的使用:
gcc 源文件.c ./ 库名.so –o 可执行文件名、
 
我们还是用静态库的代码。
 
第一步:我们首先建立cla.c的C文件,这个小程序主要实现两个数字的加减乘除
#include <stdio.h>
int main()  
{  
int a,b;
scanf("%d%d",&a,&b);
printf("add = %d\n",add(a,b);  
printf("sub = %d\n",sub(a,b));  
printf("mul = %d\n",mul(a,b));  
printf("div = %d\n",div(a,b));
return 0;  
}
 
第二步:建立add.c sub.c mul.c div.c四个从文件里面分别包含加减乘除的函数
int add(int a,int b)  
{  
return a + b;  
}
int sub(int a,int b)  
{  
return a - b;  
}
int mul(int a,int b)  
{  
return a * b;  
}
int div(int a,int b)  
{  
return a/b;  
}
Linux下动态库的建立
 
第三步:在Linux命令行下建立libname.so动态库
在命令行输入 gcc -shared -fPIC -o libname.so add.c sub.c mul.c div.c
Linux下动态库的建立
 
第四步:在Linux命令行下使用动态库libname.so生产可执行文件cla
在命令行模式下输入 gcc cla.c ./libname.so -o cla
Linux下动态库的建立
 
第五步:执行cla文件
在命令行输入./cla 输入12 和 3,分别计算出加减乘除的结果:
Linux下动态库的建立
 
本文永久更新地址:http://www.linuxdiyf.com/linux/26446.html