动态库与静态库
来源:互联网 发布:mac第三方应用商店 编辑:程序博客网 时间:2024/06/06 03:20
静态库生成方法
先把文件编译成.o文件
如gcc -c add.c -o add.o
然后在利用ar命令生成.a的库
如 ar -r libbase.a add.o
查看静态库中的内容 ar -t libbaase.a
使用静态库:
如add.c的内容为
#include<stdio.h>
int add(int a,int b)
{
return (a+b);
}
编译add.c: gcc -c -static add.c -o add.o
在使用静态库时如下:如main.c函数
#include<stdio.h>
int add(int a,int b);
int main()
{
printf("3+6=%d\n",add(3,6))
}
编译mian.c:gcc -c main.c -o main.o
gcc main.o libbase.a -o app
生成可执行文件app
动态库的使用
编译add.c:gcc -c -fpic add.c
gcc -shared add.o -o libbase.so
此时已经生成动态库
然后进行使用:
首先编译main.c gcc -c main.c -o main.o
gcc mian.o ./libbase.so -o app在此过程中要指定动态库的路径,一般相对路径就可以,不能至指定库名。
连接ldd app
然后就可以生成可执行文件app了
阅读全文
0 0
- 动态与静态库
- 静态库与动态库
- 动态库与静态库
- 静态库与动态库
- 静态库与动态库
- 动态库与静态库
- 动态库与静态库
- 静态库与动态库
- 动态库与静态库
- 静态库与动态库
- 静态库与动态库
- 静态库与动态库
- 动态库与静态库
- 静态库与动态库
- 静态库与动态库
- 静态库与动态库
- 静态库与动态库
- 静态库与动态库
- 原生javascript FileReader对象实现图片上传本地预览效果
- VTK之自定义Filter类
- JavaScript函数式编程(一)
- numpy函数(1)——linspace创建等差数列
- 《数据结构学习与实验指导》5-5:QQ账号的申请与登录
- 动态库与静态库
- 【Leetcode】【python】Construct Binary Tree from Preorder and Inorder Traversal (Inorder and Postorder)
- QQ怎么找回/恢复被删掉的好友
- 2122数据结构实验之链表七:单链表中重复元素的删除
- 二叉树的基本操作
- 35.查找插入位置
- 第二次作业
- JavaScript函数式编程(二)
- leetcode 241. Different Ways to Add Parentheses