Ubuntu 静态库

来源:互联网 发布:淘宝千里眼破解版 编辑:程序博客网 时间:2024/06/07 04:50

Ubuntu静态库文件一般是a为后缀,如libxxx.a, 实际上是把全部o文件打包到一个文件中。o文件是指令的即可。
(.o: 目标文件,.a: 由目标文件构成的档案文件。)
1. 创建static.c文件,内容如下:

#include <stdio.h>void static_fun(void){  printf("hi,sir!\n");}
  1. 创建静态库,分二步:
gcc -c static.c   //create static.o ar -r libstatic.a static.o //create libstatic.a

至此,静态库创建完成。

  1. 测试静态库的调用
    创建main.c文件,内容如下:
#include <stdio.h> int main(void){  printf("call static lib(.a)\n");  static_fun();   return 0;}

编译命令:

gcc main.c libstatic.a -L. -o static_exe

其中-L.:表示在当前目录查找库文件,如果写为:-L./lib 则表示在当前目录的lib目录下查找库文件。
(or gcc main.c -lstatic -L. -static -o static_exe )其中 -lstatic 表示静态库的名字为static.
编译生成static_exe,windows用多了,名字加了个exe,嘿嘿。
4. 运行程序:

./static_exe

结果输出:
call static lib(.a)
hi,sir!