zoukankan
html css js c++ java
Linux共享库简单总结
库
静态库
编译的二进制会重新包含一份静态库的副本
共享库
编译
gcc -shared -o file.c
-fPIC
链接
ld
ld-linux.so.2
可执行程序–>动态依赖表
流程:程序运行–>加载ld-linux.so.2–>搜索动态库路径寻–>路径下根据动态链接表搜索动态库 –> 搜索相应符号链接加载至内存执行
符号链接覆盖:简单的说是两个同名的函数具有相同的符号链接则会绑定第一次搜索到的符号链接函数
程序运行时搜索到共享库的三种方法
LD_PATH
/lib /usr/lib /etc/ld.config.d/ 下路径添加
-rpath 编译时选项
soname
库别名
真实库: libname.so.major.min –> libname.so.1.1
别名:libname.so.major–> libname.so.1
软链接:libname.so–>libname.so
软链接–>真实库
工具
ldd
nm
objdump
ldconfig
readelf
命名公约
查看全文
相关阅读:
缓冲区溢出漏洞实验
编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能
预备作业01
20155335俞昆的第2次随笔
20155335俞昆
团队博客
小组项目第三周(20145101、20145102、20145124、20145203)
小组项目第二周(20145101、20145102、20145124、20145203)
小组项目第一周(20145101、20145102、20145124、20145203)
项目总结
原文地址:https://www.cnblogs.com/unclemac/p/12783427.html
最新文章
C++中使用const修饰指针
集成学习:以Bagging、Adaboosting为例
项目二:新生儿黄疸辨别系统
项目一:基于自编码器的药靶关系预测
如何解决机器学习中数据不均匀问题
最大熵模型(MEM)
逻辑回归模型
助教总结 第四周
作业9
作业8
热门文章
作业7
作业6
作业5
作业4
作业3
作业2
作业1
spring boot系列——结合mybatis-plus
冲刺第三天——MyBatis-Plus
《信息安全工程技术应用》课程设计报告——个人报告
Copyright © 2011-2022 走看看