gcc共享库(动态链接库)的制作和使用

本文主要记录了gcc共享库的制作和使用过程。

(1)命名规则
(a)lib+名字+.os
(2)制作步骤
(a)生成与位置无关的代码(.o文件)

gcc -fPIC -c *.c

在这里插入图片描述
共享库只记录相对位置。
gcc共享库(动态链接库)的制作和使用_第1张图片

(b)将.o打包成共享库(动态库)
在这里插入图片描述

gcc -shared -o libMyCalc.so *.o -Iinclude

(3)发布和使用共享库
生成可执行文件方法一:

gcc main.c lib/libMyCalc.so -o app –Iinclude

方法二:

gcc main.c -Iinclude -Linclude -L./lib -lMyCalc -o myapp

gcc共享库(动态链接库)的制作和使用_第2张图片
查看可执行文件依赖的库:ldd myapp
gcc共享库(动态链接库)的制作和使用_第3张图片
这里的libMyCalc.so显示未找到,解决该问题请看我的博客《解决程序执行时动态库无法被加载的问题》https://blog.csdn.net/HuYingJie_1995/article/details/82985961

你可能感兴趣的:(Linux)