ImportError: libGL.so.1: cannot open shared object file: No such file or directory
在不联网的服务器上的Docker容器内运行Python程序,Python版本是3.10版本。安装的opencv-python是这一版:opencv-python==4.9.0.80和opencv-contrib-python==4.9.0.80的包
docker挂载运行程序出现以下报错:
Traceback (most recent call last):
File"/service_iqa/service_iqa.py", line 16,in <module>
from pipeline import get_return,chek_iqa
File"/service_iqa/pipeline.py", line 1,in <module>
import json.os.cv2
File "/usr/local/lib/python3.10/site-packages/cv2/__init__.py",line 181.in <module> bootstrap()
File"/usr/local/lib/python3.10/importlib/__init__.py", line 126,in import_module
return_bootstrap._gcd_import(name[level:],package,level)
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
首先在Linux Ubuntu系统中查看是否安装了OpenGL库,使用ldconfig检查动态链接库:
ldconfig -p | grep libGL
如果系统上列出所有OpenGL相关的库,是由于opencv相关的python不兼容导致的
卸载相关的python包
opencv-python==4.9.0.80
opencv-contrib-python==4.9.0.80
安装
opencv-contrib-python==4.10.0.84
opencv-python==4.10.0.84
opencv-python-headless==4.10.0.84
完成安装后,重启python环境再运行代码即可。
如果没有安装,在Linux Ubuntu系统中,安装OpenGL库
sudo apt-get install libgll-mesa-glx
这个命令将安装OpenGL库及其依赖项。
如果你使用的是其他Linux发行版,可以使用相应的包管理器来安装OpenGL库。
更多推荐


所有评论(0)