qfedu-c-level/day8/d2
flykhan 67ac07b1a4 day8 coding: 动态库的生成和使用 2023-07-12 11:41:46 +08:00
..
my day8 coding: 动态库的生成和使用 2023-07-12 11:41:46 +08:00
README.md day8 coding: 动态库的生成和使用 2023-07-12 11:41:46 +08:00
my.c day8 coding: 动态库的生成和使用 2023-07-12 11:41:46 +08:00
test.c day8 coding: 动态库的生成和使用 2023-07-12 11:41:46 +08:00

README.md

动态库 (libxx.so) 生成

# 生成 xx 工具的动态库 xx.c ---> libxx.so
gcc -shared xx.c -o libxx.so

静态库的使用

# test.c 使用 libxx.so 编译生成可执行文件 test 的方式
gcc test.c libxx.so -o test
# 运行时需要将库文件的目录 (./是当前路径) 添加到 LD_LIBRARY_PATH 环境变量中
export LD_LIBRARY_PATH=./my/libs:$LD_LIBRARY_PATH
# 或者将生成的库文件和相关头文件添加 (或使用软连接) 到系统的库目录 (/usr/lib) 及系统的头文件目录 (/usr/include)中
# 以 root 进入 /usr/lib 目录,然后创建软连接
ln -s /动态库目录.../libxx.so .