我试图运行cv2,但当我试图导入它时,我得到以下错误:
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
建议的在线解决方案是安装
apt install libgl1-mesa-glx
但这是已经安装的最新版本。
注:我实际上是在Docker上运行这个,我无法检查OpenCV版本。我尝试导入matplotlib,导入正常。
我试图运行cv2,但当我试图导入它时,我得到以下错误:
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
建议的在线解决方案是安装
apt install libgl1-mesa-glx
但这是已经安装的最新版本。
注:我实际上是在Docker上运行这个,我无法检查OpenCV版本。我尝试导入matplotlib,导入正常。
当前回答
安装opencv-python-headless而不是opencv-python 这对我来说很管用! 我正在将我的网站部署到Azure上,然后弹出这个异常: ImportError: libGL.so。1:无法打开共享对象文件:没有共享对象文件或目录 然后卸载opencv-python包,安装后者, 冻结需求,然后再次部署, 这样问题就解决了。
其他回答
安装opencv-python-headless而不是opencv-python 这对我来说很管用! 我正在将我的网站部署到Azure上,然后弹出这个异常: ImportError: libGL.so。1:无法打开共享对象文件:没有共享对象文件或目录 然后卸载opencv-python包,安装后者, 冻结需求,然后再次部署, 这样问题就解决了。
对于树莓派来说,这样写,为我工作:
sudo apt-get install ffmpeg libsm6 libxext6 -y
对我来说,这个问题与代理设置有关。对于pypi,我使用nexus镜像到pypi,对于opencv什么都不工作。直到我连接到另一个网络。
下面是你需要的解决方案:
pip install -U opencv-python
apt update && apt install -y libsm6 libxext6 ffmpeg libfontconfig1 libxrender1 libgl1-mesa-glx
在我看来,这是一个更好的解决方案。python3-opencv包包含OpenCV的所有系统依赖项。
RUN apt-get update && apt-get install -y python3-opencv
RUN pip install opencv-python