遇到了ImportError: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory
来源:互联网 发布:淘宝联盟手机返利 编辑:程序博客网 时间:2024/05/23 00:04
在linux上运行程序的时候,发现有这个异常:
Traceback (most recent call last):
File "rcctestsuite.py", line 13, in <module>
from validator.db.processor import Processor as DBProcessor
File "/usr/RAT/src/validator/db/processor.py", line 9, in <module>
from syniverse.dboperate import DBOperateAction
File "/usr/RAT/src/syniverse/dboperate.py", line 4, in <module>
import MySQLdb,time,traceback,logging
File "build/bdist.linux-x86_64/egg/MySQLdb/__init__.py", line 19, in <module>
File "build/bdist.linux-x86_64/egg/_mysql.py", line 7, in <module>
File "build/bdist.linux-x86_64/egg/_mysql.py", line 6, in __bootstrap__
ImportError: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory
解决方法如下:
1. 通过命令查找libmysqlclient_r.so.16 在什么地方,一般是在/usr/lib64/mysql/下面
2. 做一个链接到/usr/lib64 下: ln -s /usr/lib64/mysql/libmysqlclient_r.so.16 /usr/lib64/libmysqlclient_r.so.16
问题解决。
出现这个问题的原因是mysqldb无法找到libmysqlclient_r.so.16,所以就给它一个。这个文件是mysqldb用来链接到mysql数据库的。
网上查找发现还有其他的解决方法,列举如下:
1. 编辑/etc/bash_profile, 加入LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/lib/mysql:$LD_LIBRARY_PATH
但是这可能只对命令行模式下的python起作用,另外有可能覆盖系统的搜索路径,引起其他的程序出问题
2. 在编译python时,就加入–with-libs=/usr/lib64/mysql 这个选项。
3. 在/etc/ld.so.conf.d目录下,添加一个mysql文件,其中加入
/usr/lib/mysql
然后运行 ldconfig
以上方法均未尝试
- 遇到了ImportError: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory
- ImportError: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory
- ImportError: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory
- caffe遇到 ImportError: libcudart.so.7.5: cannot open shared object file: No such file or directory
- Error loading MySQLdb module: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory
- ImportError: libghmm.so.1: cannot open shared object file: No such file or directory 解决方案
- ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
- ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
- ImportError: libffi.so.6: cannot open shared object file: No such file or directory
- ImportError: libcudart.so.7.0: cannot open shared object file: No such file or directory
- ImportError: libclntsh.so.11.1: cannot open shared object file: No such file or directory解决方案
- ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
- ImportError: libopencv_core.so.3.1: cannot open shared object file: No such file or directory
- ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory
- ImportError: libmkldnn.so.0: cannot open shared object file: No such file or directory
- ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
- ImportError: libmkldnn.so.0: cannot open shared object file: No such file or directory
- 【报错】ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory
- 如何为自己赢得表达的机会、时间
- 比特币
- CentOS 7 :Failed to start IPv4 firewall with iptables.
- java线程池大小为何会大多被设置成CPU核心数+1
- (二)java框架篇笔记库(20)
- 遇到了ImportError: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory
- Java面试题全集(上)
- opencv(四)对图像处理
- windows7下基于Anaconda安装TensorFlow
- Gradle的高级技巧
- 2017.12.7
- QT控件大全 二十一 QPush
- 线程的初步理解,生命周期,实现方法,Thread类,Runnable接口,Callable接口线程池
- Scala学习笔记之 --- Array、ArrayBuffer以及遍历数组(1)