编译Linux使用的.a库文件
编译Linux使用的.a库文件
首先是需要编译成.a的源文件
hello.h:
#ifndef __INCLUDE_HELLO_H__ #define __INCLUDE_HELLO_H__ void hello(const char *name); #endif // end __INCLUDE_HELLO_H__
hello.c
#include "stdio.h" void hello(const char *name) { printf("Hello world %s\n", name); }
和一个在linux平台上做测试的main.c
#include "hello.h" int main() { hello("everyone"); return 0; }
在Linux上面做测试,编译成.a文件,主要利用.o文件和ar命令
1、首先生成.o文件:
gcc -c hello.c
这样源代码的目录下就会产生一个hello.o
2、利用ar命令,从.o文件中创建.a文件
ar cr libhello.a hello.o
这样就可以生成.a文件了,注意,所要生成的.a文件的名字前三位最好是lib,否则在链接的时候,就可能导致找不到这个库
3、在linux下测试使用
编译main.c,并让hello.a链接到main中
gcc main.c -L. -lhello -o main(注意这里-L后面有个.)
这样在当面目录下面就出现了可执行程序main,直接运行就是我们索要的结果了
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。