阅读、理解和学习材料“用gcc生成静态库和动态库.pdf”和“静态库.a与.so库文件的生成与使用.pdf”,请在Linux系统(Ubuntu)下如实仿做一遍。

用gcc生成静态库和动态库.pdf

第一步:编辑生成例子程序hello.h,hello.c,main.c

创建一个test的文件夹,保存文件

mkdir test
cd test

 然后用vim编辑生成需要的三个文件hello.h,hello.c,main.c

第二步:将hello.c编译成.o文件

gcc -c hello.c

 第三步:由.o文件创建静态库.a

ar -crv libmyhello.a hello.o

第四步:在程序中使用静态库

gcc main.c libmyhello.a -o hello

 第五步:由.o文件创建动态库文件

gcc -shared -fPIC -o libmyhello.so hello.o

 第六步:在程序中使用动态库

gcc main.c libmyhello.so -o hello

静态库.a与.so库文件的生成与使用.pdf

第一步:创建一个作业目录test2

mkdir test2
cd test2

第二步:用vim生成所需要的四个文件

vim A1.c
vim A2.c 
vim A.h
vim test.c

第三步:静态库和动态库的生成和使用

1.静态库.a文件的使用和生成

1.1生成目标文件.o

gcc -c A1.c A2.c

1.2生成静态库.a文件

ar -crv libafile.a A1.o A2.o

1.3使用.a库文件,创建可执行程序

gcc -o test test.c libafile.a
./test

2共享库.so文件的生成和使用

2.1生成目标文件.o

gcc -c -fpic A1.c A2.c 

2.2生成共享库.so文件

gcc -shared *.o -o libsofile.so
gcc -o test test.c libsofile.so
./test

示例1:

静态库:

ar crv libsub.a sub1.o sub2.o
gcc -o main main.c libsub.a

 

 动态库:

gcc -shared -fPIC libsub.so sub1.o sub2.o
gcc -o main main.c libsub.so

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值