今天在使用cv2
这个包时,发现程序跑不起来,报这个错:
Traceback (most recent call last):
File "parse.py", line 5, in <module>
import cv2
File "/home/ai/venv/tf/lib/python3.6/site-packages/cv2/__init__.py", line 3, in <module>
from .cv2 import *
ImportError: libSM.so.6: cannot open shared object file: No such file or directory
我的环境是centos7
和python3.6
。可以使用如下命令查看缺少了什么安装包:
yum whatprovides libSM.so.6
image.png
可以看到是这个包:libSM-1.2.2-2.el7.i686
,接下来可以使用这个命令进行安装:
sudo yum install libSM-1.2.2-2.el7.x86_64 --setopt=protected_multilib=false
至于为什么要把i686
改成x86_64
我就不知道了。
安装好了之后,有可能会发现还有缺少的包,一直使用这个方法即可。最后可以验证一下有没有安装成功:
网友评论