全网首发:由两个库同名函数,看LINUX动态库加载及调用

简介: 全网首发:由两个库同名函数,看LINUX动态库加载及调用

最近的字体问题,有点怪:


系统库叫freetype,吾库叫tsfreetype。

执行程序先freetype,随后在使用时加载tsfreetype。功能出错。

使执行程序强制依赖tsfreetype,功能正常。

 为什么出错?因为两个库有同名函数。你在调用的时候,系统按照先入为主的原则搜索。这听起来是正常的。 碰到这种情况,通过函数改名即可解决。


 我们来看另外一个例子:


freetype库,B函数,调用C。

tsfreetype库,D函数,调用C。

 现在问,D函数调用C,C是哪个?测试后,结论是不一定:


在KYLIN上,优先在本库中搜索。

在UOS上,原则依然是先加载的库优先。这就悲剧了,因为这个时候已经乱七八糟,结果不可预料。

 这个问题怎么解决呢?改变加载库顺序。强制依赖,指定搜索路径。参考其他博文。

目录
相关文章
|
17天前
|
Linux
关于Linux目录访问函数总结
关于Linux目录访问函数总结
13 1
|
24天前
|
算法 Linux C++
【Linux系统编程】深入解析Linux中read函数的错误场景
【Linux系统编程】深入解析Linux中read函数的错误场景
196 0
|
24天前
|
存储 算法 Linux
【Linux系统编程】深入理解Linux目录扫描函数:scandir目录函数(按条件扫描目录
【Linux系统编程】深入理解Linux目录扫描函数:scandir目录函数(按条件扫描目录
37 0
|
11天前
|
Linux 开发者
Linux文件编程(open read write close函数)
通过这些函数,开发者可以在Linux环境下进行文件的读取、写入和管理。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
84 4
|
23天前
|
存储 Unix Linux
深入理解 Linux 系统下的关键网络接口和函数,gethostent,getaddrinfo,getnameinfo
深入理解 Linux 系统下的关键网络接口和函数,gethostent,getaddrinfo,getnameinfo
14 0
|
10天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
11天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
8天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
30 9
|
1天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
8 0
|
2天前
|
域名解析 网络协议 Linux
Linux 中的 Nslookup 命令怎么使用?
【4月更文挑战第12天】
20 6
Linux 中的 Nslookup 命令怎么使用?