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
命名公约
查看全文
相关阅读:
MySQL高级(十五)--- 主从复制
MySQL高级(十四)--- 行锁
MySQL高级(十三)--- 表锁
MySQL高级(十二)--- 全局查询日志
MySQL高级知识(十一)--- Show Profile
MySQL高级(十)--- 批量插入数据脚本
MySQL高级(九)--- 慢查询日志
MySQL高级(八)--- ORDER BY优化
MySQL高级(七)--- 索引面试题分析
SpringBoot系列教程web篇之如何自定义参数解析器
原文地址:https://www.cnblogs.com/unclemac/p/12783427.html
最新文章
Cayley图数据库的简介及使用
文件服务器的两种实现方式
Lc184-部门工资最高的员工
Lc183-从不订购的客户
Lc15-三数之和
转载-生气的危害
Lc9-Palindrome Number
Lc182- 查找重复的电子邮箱
Lc181-超过经理收入的员工
Lc11-Container With Most Water
热门文章
java 8 stream
转载-Spring Boot 参数校验
转载-java技术栈脑图
Lc180-连续出现的数字
Lc8-字符串转换整数 (atoi)
eclipse debug启动时一直创建单例导致启动很慢
费曼学习法+脑图
Lc178-分数排名
Lc177-第N高的薪水
MySQL高级知识(十六)--- 小表驱动大表
Copyright © 2011-2022 走看看