制作静态链接库并使用
来源:互联网 发布:北理工网络教育 编辑:程序博客网 时间:2024/06/03 03:18
1、制作静态链接库
第一步:demo.c demo.h
/* demo.c */#include <stdio.h>void func1(void){ printf("func1 in demo.c.\n");}int func2(int a,int b){ printf("func2 in demo.c.\n"); return a+b;}/*demo.h*/void func1(void);int func2(int a, int b);
第二步:制作静态库
gcc -c demo.c -o demo.car -rc libdemo.a demo.o
使用gcc -c 只编译不连接,生成.o文件。然后使用ar工具打包成.a归档文件。库名不能随便乱起,一般是lib+库名称,后缀名是.a表示一个归档文件。
第三步:制作出静态库后,发布时需要发布.a文件和.h文件。
2、使用静态库
把.a文件和.h文件都放在需要引用的文件夹下。
/* test.c */#include "demo.h"#include <stdio.h>int main(void){ func1(); int a = func2(4, 5); printf("a = %d.\n",a); return 0;}
编译:
gcc test.c -o test -ldemo -L.
当使用-lxxx时,链接器试图在默认的链接库路径去寻找libxxx.a文件,但是libdemo.a文件放在了当前路径,找不到。所以-L是指定链接器在哪个目录下寻找的库文件,句号.表示当前路径。
3、nm命令
nm命令用来查看一个.a文件中都有哪些符号,如:
book@book-desktop:/work/c_test$ nm libdemo.a demo.o:00000000 T func100000014 T func2 U puts
阅读全文
0 0
- 制作静态链接库并使用
- 自己制作静态和动态链接库并使用
- Xcode_制作并使用静态类库
- OpenCV制作静态链接库
- Linux制作静态链接库
- Linux下静态链接库的制作与使用
- Linux下静态链接库的制作与使用
- Linux下静态链接库的制作与使用
- 在Dev C++中制作和使用静态链接库
- 如何制作及链接静态链接库。
- 如何制作及链接静态链接库
- windows下创建并使用静态链接库(.lib)
- Qt之创建并使用静态链接库
- Qt之静态链接库的创建并使用
- Qt之创建并使用静态链接库
- 制作并使用静态类库(Static Library)详细教程
- 制作并使用静态类库(Static Library)
- 制作并使用静态类库(Static Library)详细教程
- TCP报头中URG、PSH标志详解
- 03.java注释
- USACO 1.2 Milking Cows
- Java线程的状态
- 用一个int型保存32个boolean类型的值
- 制作静态链接库并使用
- php -i 与 php -m
- java 设计模式 —— 浅析代理模式
- IE,谷歌浏览器的兼容性问题总结
- JavaScript前端常见算法面试题总结
- MySQL学习笔记-约束以及修改数据表
- CentOS下RPM方式安装MySQL5.6
- python魔法方法——(__new__)
- 实现bootstrap的dropdown-menu(下拉菜单)点击后不关闭的方法