目录
1、用gcc生成静态库和动态库
- 静态库
在程序编译时会被连接到目标代码中,程序运行是则不需要静态库的存在。 - 动态库
在程序编译时不会被连接到目标代码中,而是程序运行时载入的。
两者区别:前者是编译连接的,后者是程序运行载入的。
1.hello实例使用库
hello代码
hello.h
#ifndef HELLO_H
#define HELLO_H
void hello(const char *name);
#endif//HELLO_H
hello.c
#include<stdio.h>
void hello(const char *name)
{
printf("Hello %s\n",name);
}
main.c
#include"hello.h"
int main()
{
hello("everyone");
return 0;
}
2、. gcc编译得到.o文件
gcc -c hello.c
3.静态库使用
(1)创建静态库
创建静态库的工具:ar
静态库文件命名规范:以lib作为前缀,是.a文件 输入命令 ar -crv libmyhello.a hello.o
(2)程序中使用静态库
1).gcc -o hello main.c -L. -lmyhello 注 main.c可以放在-L.和-lmyhello之间
2).gcc main.c libmyhello.a -o