动态库加载配置

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

./move_db: error while loading shared libraries: libmysqlclient.so.15: cannot

open shared object file: No such file or directory

第一步:确认有哪些Lib无法Load

>ldd move_db

linux-gate.so.1 => (0x0089c000)

libmysqlclient.so.15 => not found

libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00cfa000)

libm.so.6 => /lib/libm.so.6 (0x00804000)

libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x009f8000)

libc.so.6 => /lib/libc.so.6 (0x0069e000)

/lib/ld-linux.so.2 (0x0067b000)

第二步:系统要确认动态库的地址,把动态库的路径放到/etc/ld.so.conf中

建议:在/etc/ld.so.conf.d/上新建动态库相应的文件配置文件*.conf,

在该文件中填上该动态库的绝对路径

此例:

vim /etc/ld.so.conf.d/ld.mysql.so.conf

/usr/local/mysql/lib

第三步:运行ldconfig重建/etc/ld.so.cache

原文地址:https://www.cnblogs.com/justart/p/9010567.html

时间: 2024-10-16 10:15:45

动态库加载配置的相关文章

Linux程序动态库加载优化

作者:zhanhailiang 日期:2014-10-26 linux程序动态库加载流程简介 linux从程序(program或对象)变成进程(process或进程),简单说来需要经过三步: fork进程,在内核创建进程相关内核项,加载进程可执行文件: 查找依赖的.so,逐一加载映射虚拟地址: 初始化程序变量: 如下例通过strace查看pwd命令执行过程: [root@~/wade/codeReview/learningc]# strace pwd execve("/bin/pwd"

linux和windows动态库加载路径区别

# linux和windows动态库加载路径区别 ### 简介------------------------------ linux加载动态库的路径是系统目录/lib和/usr/lib.- windows加载动态库的路径是本地目录下,然后再搜索windows/system和windows/system32目录 ### 备注------------------------------ linux加载动态库的路径方式,对于习惯windows开发的开发者是不太方便的.- 其实linux下可以设置从当

linux动态库加载的秘密

摘自http://gotowqj.iteye.com/blog/1926734 摘自http://www.360doc.com/content/14/0313/13/12747488_360246417.shtml linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名.二者都使用广泛.本文主要讲动态库方面知识. 基本上每一个linux 程序都至少会有一个动态库,查看某个程序使用了那些动态库,使用ldd命令查看 # ldd /bin/ls linux-vdso.so.1 =

linux下添加动态链接库路径、动态库加载等方法

linux下添加动态链接库路径的方法 2017年01月20日 10:08:17 阅读数:5596 Linux共享库路径配置 Linux下找不到共享库文件的典型现象为明明已经安装某个软包(如libnet,MySQL),编译连接可以正常进行,但是在运行时出现如"error while loading shared libraries: libnet.so.1:cannot open shared object file :No such file or directory"的错误提示. 原

记一起动态库加载错误问题排查过程

我们的服务器软件在一台新机器上启动的时候报错: error while loading shared libraries: libtcmalloc_mininal.so.4 No such file or directory 1,首先找找动态库libtcmalloc是否在新机器上 libtcmalloc这个动态库在目录/usr/local/lib下面,再查看/etc/ld.so.conf/gperftools.conf,它已经把目录/usr/local/lib加入到动态库搜索路径中了,为什么还会

ios 动态库加载及某个文件非ARC问题

build setting里的header search paths里增加动态库头文件的搜索路径如 /usr/include/libxml2 还要在other linker flags里增加 -lxml2 如果某个文件是非ARC,则在build phases里的compile sources里找到对应的文件增加-fno-objc-arc

AutoSharedLibrary -- 基于模板元编程技术的跨平台C++动态链接加载库

基于模板元编程技术的跨平台C++动态链接加载库.通过模板技术,使用者仅需通过简单的宏,即可使编译器在编译期自动生成加载动态链接库导出符号的代码,无任何额外的运行时开销. ASL_LIBRARY_BEGIN(TestLib) ASL_SYMBOL(Proc_test1, test1, false) ASL_SYMBOL(Proc_test2, test2, true) ASL_LIBRARY_END() TestLib theLib; try { theLib.Load("./1.so"

此编译单元不包含在frame元数据中指定的factoryClass,无法加载配置的运行时共享库

警告:此编译单元不包含在frame元数据中指定的factoryClass,无法加载配置的运行时共享库.要在没有运行时共享库的情况下进行编译,请将 -static-link-runtime-shared-libraries  选项设置为true, 或删除 -runtime-shared-libraries 选项. 通过修改FlashBuilder4\Adobe Flash Builder 4\sdks\4.0.0\frameworks  下的flex-config.xml,将 <static-li

6.Sentinel源码分析—Sentinel是如何动态加载配置限流的?

Sentinel源码解析系列: 1.Sentinel源码分析-FlowRuleManager加载规则做了什么? 2. Sentinel源码分析-Sentinel是如何进行流量统计的? 3. Sentinel源码分析- QPS流量控制是如何实现的? 4.Sentinel源码分析- Sentinel是如何做到降级的? 5.Sentinel源码分析-Sentinel如何实现自适应限流? 有时候我们做限流的时候并不想直接写死在代码里面,然后每次要改规则,或者增加规则的时候只能去重启应用来解决.而是希望能