1.准备创建静态链接库的源文件: aston.c 、 aston.h,其中aston.c 中实现简单的打印调试信息,及返回2数相乘的结果值,具体如下图:


GCC+ LINUX +创建静态链接库

GCC+ LINUX +创建静态链接库


2创建Makefile,具体描述:1.设置只编译不链接(只生产.o文件) 2.使用ar 命令 创建归档文件(即 .a 静态链接库文件)。具体如下图:

GCC+ LINUX +创建静态链接库


(3)编写测试代码: test.c 。 注意: 要使用创建的静态链接库,需要include 该头文件(.h),具体如下图:

GCC+ LINUX +创建静态链接库

5linux 命令提示符下:  gcc   test.c   -o   test   ,编译后,出现如下错误: 


GCC+ LINUX +创建静态链接库


分析错误原因:  由于我们编写的.a 文件不是gcc 默认链接的库,因此需要我们手动去 链接,具体操作: gcc   test.c   -o   test    -laston , 如下图:


  GCC+ LINUX +创建静态链接库


分析错误原因: 我们可以发现错误的提示变了 ,提示的错误为链接相关的错误,这是因为我们还没有指定我们编写的 . a  路径, 具体操作 : gcc  test.c   -o  test   -laston  -L.

如下图: 

GCC+ LINUX +创建静态链接库

7排除了上述的问题,再次编译,无警告无错误。 具体运行结果如上图。




相关文章: