栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

第三阶段:12.linux库之动态库生成和使用

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

第三阶段:12.linux库之动态库生成和使用

2.动态库的制作:
gcc -shared -fpic testfunc.c -o libcalc.so
//生成 libxxx.so (动态库)文件
-shared 指定生成动态库
-fpic 标准,fPIC 选项作用于编译阶段,在生成目标文件时就得使用该选项,以生成位置无关的代码。

3.动态库的使用(与静态库一样):
gcc test.c -lcalc -L . //libcalc.so 动态库库名砍头去尾
生成的可执行文件a.out不能直接运行,提示没有这个文件,此时需要指定动态库位置

引用动态库,怎么指定动态库的位置
https://www.cnblogs.com/progamming/p/13043652.html
带动态库的程序,可以指定该程序运行时候,在LD_LIBRARY_PATH 所指定的路径去找库文件即: export LD_LIBRARY_PATH="/home/CLC/ShuMeiPi"
PS:Linux pwd(英文全拼:print work directory) 命令用于显示工作目录。执行 pwd 指令可立刻得知您目前所在的工作目录的绝对路径名称。

export LD_LIBRARY_PATH="/home/CLC/ShuMeiPi" (临时的,换一个窗口就不行)

此时可执行文件a.out已经可以运行如果我们想在其他的窗口也可执行,可以写一个脚本start.sh (通过脚本把两个指令并在一起)

export LD_LIBRARY_PATH="/home/CLC/ShuMeiPi" 
 
./a.out

给脚本文件加一个可执行的权限

chmod +x start.sh

此时 直接运行脚本即可 ./start.sh

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/513206.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号