函式库管理:ldconfig 与 /etc/ld.so.conf 以及 ldd

Ubuntu使用科大讯飞SDK 操作系统:Ubuntu16.04LTS 最近公司的项目需要用到科大讯飞的离线语音合成,使用SDK时遇到了两个问题。 1.编译c文件 2.导入动态链接库 .so文件 接下来详细说明一下流程。 1.科大讯飞下载SDK          添加离线语音合成服务,并点亮图标         SDK下载下来是这样的           解压 2.导入动态链接库      ... 阅读详情

现在知道了动态与静态函数库,也知道了当前的Linux大多是将函数库做成动态函数库,下面来讨论增加函数库读取性能的方法。我们知道,内存的访问速度是硬盘的好几倍,所以,如果将常用的动态函数库加载到内存中(高速缓存,cache),当软件套件要采用动态函数库时,就不需要重新从硬盘里读出,这样就可以提高动态函数库的读取速度。这个时候需要ldconfig与 /etc/ld.so.conf的帮助。

将动态函数库加载到高速缓存(cache)中的过程如下:

1. 首先,要在 /etc/ld.so.conf中写下“想要读入高速缓存中的动态函数库所在的目录”,注意,是目录而不是文件。

2. 利用ldconfig执行文件将 /etc/ld.so.conf的数据读入高速缓存中。

3. 同时在 /etc/ld.so.cache文件中记录数据。

事实上,ldconfig还可以用来判断动态函数库的连接信息。赶紧使用Fedora Core 4来测试吧。假设要将MySQL函数库加入到高速缓存中:

 

透过上面的动作,我们可以将 MySQL 的相关函式库给他读入快取当中, 这样可以加快函式库读取的效率呢!在某些时候,您可能会自行加入某些 Tarball 安装的动态函式库,而您想要让这些动态函式库的相关连结可以被读入到快取当中, 这个时候您可以将动态函式库所在的目录名称写入 /etc/ld.so.conf 当中,然后执行 ldconfig 就可以啦!

ldd:
     说了这么多,那么我如何判断某个可执行的 binary 档案含有什么动态函式库呢?很简单,利用 ldd 就可以晓得了!例如我想要知道 /usr/bin/passwd 这个程式含有的动态函式库有哪些,可以这样做:
      

未来如果您常常升级安装 RPM 的套件时( 下一章节会介绍 ),应该常常会发现那个‘ 相依属性’的问题吧!?没错!我们可以先以 ldd 来视察‘相依函式库’之间的相关性!以先取得瞭解! 例如上面的例子中,我们检查了 libc.so.6 这个在 /lib 当中的函式库,结果发现他其实还跟 ld-linux.so.2 有关!所以我们就需要来瞭解一下,那个档案到底是什么套件的函式库呀!?使用 -v 这个参数还可以得知该函式库来自于哪一个套件!像上面的资料中,就可以得到该 libc.so.6 其实可以支援 GLIBC_2.1 等的版本!

 

feko金属球远场RCS双站 阅读详情

相关推荐

VLA模型(具身智能入门十)

Vision Language Action(VLA)模型VLA模型是机器人领域的“感知-理解-执行”一体化框架,通过Transformer架构融合视觉、语言、动作模态,核心目标是让机器人在自然语言驱动下,自主完成复杂操控任务。其定义的核心在于“跨模态统一”与“具象化行动”——不仅能“看懂”“听懂”,更能“做出正确的动作”,是实现通用机器人智能的关键方向。提供通用序列建模骨架,让视觉、语言、动作能以“序列”形式统一处理;ViT将视觉输入转换为序列特征,提供“看”的能力;LLMs。

weixin_39699362的博客 9915

Linux 共享库

Linux 系统上有两类根本不同的 Linux 可执行程序。第一类是静态链接的可执行程序。静态可执行程序包含执行所需的所有函数 — 换句话说,它们是“完整的”。因为这一原因,静态可执行程序不依赖任何外部库就可以运行。  第二类是动态链接的可执行程序。  静态可执行程序与动态可执行程序比较  我们可以用 ldd 命令来确定某一特定可执行程序是否为静态链接的:  # ldd /sbin/sln  

我一直在 4987

MRI脑影像分析从哲学到技术:一文搞懂VBM预处理基本原理(全网最详细解析)

   分析大脑解剖学差异最常用方法之一是基于体素的形态学方法(voxel-based morphometry, VBM)。 VBM的基本思想是测量大脑组织,尤其是灰质的局部浓度的差异。在大脑的每个体素处进行操作,然后在两个或多个实验组之间进行统计比较,从而在受调查的组之间建立特定大脑区域中脑组织浓度的统计学显着差异。 VBM分析基于(高分辨率)MRI脑部扫描,涉及大量处理步骤,主要是空间归一化,分割,平滑和统计分析,最终结果是统计图,显示了各组之间组织类型明显不同的区域[^1]。 参考 [^1] ..

意疏的学习笔记 3万+

LINUX动态链接库高级应用

 LINUX动态链接库高级应用雨亦奇2002-3-13 11:09:55在《LINUX下动态链接库的创建与应用》一文中,我介绍了LINUX动态链接库的基本知识.其要点是:用户根据实际情况需要,利用dlopen,dlsym,dlclose等动态链接库操作函数,装入指定的动态链接库中指定的函数,然后加以执行.程序中使用很少的动态函数时,这样的做法尚可.如果程序需要调用大量的动态函数,那么采用这样的编程

zerray's 1640

手把手教你用ComfyUI搭建高效AI绘画工作流:从基础到高级技巧

本文详细介绍了如何使用ComfyUI构建高效的AI绘画工作流,从基础配置到高级技巧全面覆盖。通过模块化设计,ComfyUI显著提升显存利用率和创作灵活性,适合从新手到专业用户。文章包含部署指南、工作流搭建、性能优化及行业应用案例,帮助读者快速掌握AI绘画核心技术。

7up55的博客 718

【unity实战】Spline 插件让物体沿路径 “丝滑” 走位,实现火车沿轨道移动——Spline 插件的使用

Unity Spline系统教程:实现火车轨道移动 摘要:本文介绍了Unity Spline系统的核心功能与实战应用,通过火车轨道移动案例演示了完整开发流程。内容包括:1)安装Spline包并绘制样条线轨道;2)调整样条节点和曲线弧度;3)使用Spline Instantiate组件实例化轨道模型;4)通过Spline Animate组件实现小车自动沿轨移动;5)补充讲解了轨道闭合、分支节点、循环模式等进阶技巧。该系统可用于创建河流、摄像机路径等多种曲线应用,文中提供了官方文档链接和详细操作步骤,适合Uni

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1824

linux下修改只读文件如/etc/ld.so.conf

用gedit打开修改后是无法保存的,因为只有只读权限。 所以需要用vi或者vim进行修改。 下面以修改文件 /etc/ld.so.conf 为例说明具体过程: 首先在终端输入命令:sudo vim /etc/ld.so.conf 再输入密码,即可进入vim。进入后vim的默认模式是命令模式。 输入i 进入编辑模式。 现在就可以像用txt一样使用键盘任意输入和修改文件内容了。 修改完毕后,需要先回到命令模式,也就是按下ESC。 在命令模式下输入英文冒号 “ : ”...

马小超 1万+

vue2 - 实现移动端H5网页调用手机相册选取图片或打开摄像头相机拍照上传,如何在h5网站浏览器中打开本机相册或相机选择相片,H5调用本地相册/相机上传图片详细教程(附图片压缩功能及上传服务器示例)

vue2手机H5网页,调起安卓苹果ios手机相册和相机,H5实现调用手机摄像头相册实现图片压缩预览删除,vue项目调用摄像头和相册,H5调用手机摄像头,实时拍照上传,VUE2 H5页面如何唤起手机摄像头拍照上传,H5调起手机端的摄像头,html5调用手机摄像头,实现H5调起手机相机和相册,vue H5拍照上传,手机网站浏览器移动端调取相机或相册,实现拍照上传功能,解决苹果ios手机无法打开相册相机问题,无法唤起摄像头怎么办,调取本机系统的相册,vue h5网页调用相机拍照和相册,实现多张图片上传功能,图片压

✅ 精选推荐文章 1万+

linux执行文件时找不到.so

在执行文件的时候提示找不到.so,只需要: 1.打开下面的文件 sudo gedit /etc/ld.so.conf 2. 在打开的文件中添加你的.so文件所在的目录,添加完效果如下 include /etc/ld.so.conf.d/*.conf  /home/wxw/modbusqt/modbussolibrary/build-RobotInterface-Desktop_Qt_5...

跃动的风的博客 1685

在 SAP BTP 上为应用开启多租户能力:基于 SaaS Provisioning 和 XSUAA 的完整实践指南

本文介绍了在SAP BTP上配置多租户应用的实战指南。主要内容包括: 多租户架构概述:解释provider子账户、consumer子账户和tenant的概念,以及数据隔离机制。 安全配置:在xs-security.json中设置tenant-mode为shared,并为SaaS Provisioning服务添加回调scope授权。 路由配置:通过manifest.yml设置TENANT_HOST_PATTERN来定义多租户访问模式,确保不同租户通过不同子域名访问同一应用。 服务绑定:将XSUAA和SaaS

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 144

基于Simulink的无线充电系统LCC补偿网络建模与控制

本文详细介绍了基于Simulink的无线充电系统LCC补偿网络建模与控制方法。首先分析了无线充电系统面临的核心挑战,提出LCC补偿网络解决方案,阐述了其恒流输出和输入阻抗解耦原理。通过Simulink分步演示了系统建模过程,包括松耦合变压器、LCC+LC补偿网络、功率变换级搭建以及频率跟踪控制实现。仿真结果表明,LCC补偿系统在气隙变化和负载跳变下能保持输出电压稳定(波动±3%),效率达89%。文章还总结了工程实现要点,并探讨了动态充电、多负载系统等扩展应用。该教程为开发高效智能的无线充电系统提供了实用指导

amy_mhd的博客 61

/etc/ld.so.conf详解

转载自:https://www.cnblogs.com/chris-cp/p/3591306.html /etc/ld.so.conf 此文件记录了编译时使用的动态库的路径,也就是加载so库的路径。 默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件,而通常通过源码包进行安装时,如果不 指定--prefix会将库安装在/usr/local目录下,而又没有在文件/etc/ld.so.conf中添加/usr/local/lib这个目录>。这样虽然安装了源码包,但是使用时仍然找不到相

Lazyafei's Blog 1210

万字长文带你由浅入深夯实ARM汇编基础——汇编指令及寻址方式最全梳理(附示例)!

见到汇编就害怕?读完这篇,扫除汇编拦路虎!!(示例丰富,可做手册,随手查阅!)

车载系统攻城狮 1万+

函式库管理:ldconfig 与 /etc/ld.so.conf 以及 ldd

现在知道了动态与静态函数库,也知道了当前的Linux大多是将函数库做成动态函数库,下面来讨论增加函数库读取性能的方法。我们知道,内存的访问速度是硬盘的好几倍,所以,如果将常用的动态函数库加载到内存中(高速缓存,cache),当软件套件要采用动态函数库时,就不需要重新从硬盘里读出,这样就可以提高动态函数库的读取速度。这个时候需要ldconfig与 /etc/ld.so.conf的帮助。 将动态函数

chenglove1314的专栏 792

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

函式库管理:ldconfig 与 /etc/ld.so.conf 以及 ldd【转】

现在知道了动态与静态函数库,也知道了当前的 Linux大多是将函数库做成动态函数库,下面来讨论增加函数库读取性能的方法。我们知道,内存的访问速度是硬盘的好几倍,所以,如果将常用的动态函数库 加载到内存中(高速缓存,cache),当软件套件要采用动态函数库时,就不需要重新从硬盘里读出,这样就可以提高动态函数库的读取速度。这个时候需要ldconfig 与 /etc/ld.so.conf ...

一条鱼 + 一条鱼 191

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

第二十章 函式库管理

在我们的 Linux 操作系统当中,函式库是很重要的一个项目。 [color=red]因为很多的软件之间都会互相取用彼此提供的函式库来进行特殊功能的运行[/color], 例如很多需要验证身份的程序都习惯利用 PAM 这个模块提供的验证机制来实作,而很多网络连线机制则习惯利用 SSL 函式库来进行连线加密的机制。所以说,函式库的利用是很重要的。不过, [color=red]函式库又依照是否被编译到...

写博客只为学习 156

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Linux学习笔记 - 函式庫管理

来自鸟哥的Linux私房菜 http://linux.vbird.org/linux_basic/0520source_code_and_tarball.php 函式庫依據被使用的類型而分為兩大類,分別是靜態 (Static) 與動態 (Dynamic) 函式庫兩類。 靜態函式庫的特色: 副檔名:副檔名為 .a 編譯行為:這類函式庫在編譯的時候會直接整合到執行程式當

u013248470的专栏 547

Note For Linux By Jes(16)-软件安装:原始码与 Tarball

开放源码的软件安装与升级简介: 什么是开放源码、编译器与可运行档 什么是函式库: 什么是make 与configure: 侦测程序会侦测的数据大约有底下这些: 是否有适合的编译器可以编译本软件的程序码; 是否已经存在本软件所需要的函式库,或其他需要的相依软件; 操作系统平台是否适合本软件,包括Linux 的核心版本; 核心的表头定义档(h

Jes's Artistic Code 563

ldconfig(解决*.so不是符号连接)或者OPENSSL_1.0.2等符号不存在情况解决方案

在离线安装某些软件时,经常会出现*.so的动态库不是符号连接。 对于此类问题解决办法有: 找到对应动态库*.so,查看其是否是符号链接,如果不是,记着需要备份到其他目录,否则可能会出现问题那么就做软连接就行,然后重新加载动态库.例如: ln -sf /usr/local/cuda-8.0/lib64/libcudnn.so.5.0.5 /usr/local/cuda-8.0/lib64/lib...

任我行的博客 5861

opencv安装(x86/tx2 cuda/共享库)

sudo apt-get install build-essential libgtk2.0-dev libgtk-3-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev # python3支持 $ sudo apt install python3-dev python3-numpy # streamer支持 $ sudo apt install libgstreamer-plugins-base1.0-dev

David_BY的博客 2226

解决cannot open shared object file: No such file or directory

一、linux下调用动态库.so文件时提示: cannot open shared object file: No such file or directory 解决办法: 1、此时ldd xxx查看依赖缺少哪些库 libmysqlcppconn.so.7 => not found libboost_system.so.1.64.0 => not found 2、设置变量LD_LIBRARY_PATH sudo gedit ~/.bashrc 最后一行加上: e...

kaggle expert,全球排名前1000,清华计算机研究生,兴趣算法工程 1万+

Linux下常见的~/.bashrc、/etc/profile、/etc/ld.so.config小科普以及caffe编译遇到的相关问题解决

~/.bashrc 用于非交互式模式,即nonlogin shell,在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。 source ~/.bashrc/etc/profile 用于交互模式,即l

EdwarL's Blog 6864

Ubuntu——/etc/ld.so.conf

/etc/ld.so.conf此文件记录了编译时使用的动态库的路径

我们的时光! 5992

linux opencv库文件夹,linux安装及配置c++的opencv库

linux安装及配置c++的opencv库前言:最近想搞个机器视觉的比赛,要求是linux+opencv环境,没有做过opencv开发的我配置环境就配了两天,看来很多乱七八糟的博客,终于装好了。网上的大神的博客太详细,太麻烦,还不通用,所以学习了这么多经验后写这篇博客分享给和我一样的入门级选手,重复一遍,这是一篇为入门选手提供便利的博客。下面有一个步骤出现的问题,我忘记是哪一个步骤了,好像是CMa...

weixin_33364134的博客 520

linux ld.so.conf,Linux下常见的~/.bashrc、/etc/profile、/etc/ld.so.config小科普以及caffe编译遇到的相关问题解决...

~/.bashrc用于非交互式模式,即nonlogin shell,在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。source ~/.bashrc/etc/profile用于交互模式,即login sh...

weixin_35600779的博客 750

sudo ldconfig报错“不是符号连接”

Sudo ldconfig报错“不是符号连接”

m0_56876916的博客 3373
上一篇: 内存中字节对齐
下一篇: VC 获取鼠标点坐标
factor2000
博客等级 码龄21年 10粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值