遇到下面的错误:

opencv ImportError: libGL.so.1: cannot open shared object file: No such file or directory

错误的教程:👉 docker环境里安装opencv ImportError: libGL.so.1: cannot open shared object file: No such file or directory
🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡🤡
图片.png

正确的教程:👇

FROM python:3.9-buster
RUN (apt-get update) && (apt-get install -y libgl1-mesa-dev ffmpeg libsm6 libxext6)
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN (/usr/local/bin/python -m pip install --upgrade pip -i https://mirrors.aliyun.com/pypi/simple) && (pip install -i https://mirrors.aliyun.com/pypi/simple -r requirements.txt)
COPY . /code/

安装这四个东西就好了:libgl1-mesa-devffmpeglibsm6libxext6

不要把 opencv-python 改为 opencv-python-headless, 这是非常无脑的做法

如果是新的系统,比如 debian12 或者 ubuntu24.04 ,是没有 libgl1-mesa-glxlibgl1-mesa-dev 了,要改成 libgl1libglx-mesa0 ,请参考:https://segmentfault.com/a/1190000045185623


universe_king
3.4k 声望677 粉丝