ImportError: libGL.so.1: cannot open shared object file: No such file or directory
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2.5k
- Forks
- 319
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 133
Description
Search before asking
- I have searched the Inference issues and found no similar bug report.
Bug
If you install inside of Docker you need to ensure you have additional dependencies otherwise you get an error.
Ideally we should not require these (I think there's a headless version of cv2 we could use). Alternatively maybe we could catch this error and recommend the solve: apt-get update && apt-get install ffmpeg libsm6 libxext6 -y
Environment
root@C.10017133:/$ pip freeze | grep inference
inference-cli==0.9.15
inference-gpu==0.9.15
inference-sdk==0.9.15
root@C.10017133:/$
pytorch/pytorch:2.2.0-cuda12.1-cudnn8-devel docker with after running pip install inference-gpu
Minimal Reproducible Example
root@C.10017778:~$ inference benchmark python-package-speed -m "yolov8n-640"
Traceback (most recent call last):
File "/usr/local/bin/inference", line 5, in <module>
from inference_cli.main import app
File "/usr/local/lib/python3.10/dist-packages/inference_cli/main.py", line 6, in <module>
import inference_cli.lib
File "/usr/local/lib/python3.10/dist-packages/inference_cli/lib/__init__.py", line 8, in <module>
from inference_cli.lib.container_adapter import (
File "/usr/local/lib/python3.10/dist-packages/inference_cli/lib/container_adapter.py", line 10, in <module>
from inference_cli.lib.utils import read_env_file
File "/usr/local/lib/python3.10/dist-packages/inference_cli/lib/utils.py", line 5, in <module>
from supervision.utils.file import read_yaml_file
File "/usr/local/lib/python3.10/dist-packages/supervision/__init__.py", line 9, in <module>
from supervision.annotators.core import (
File "/usr/local/lib/python3.10/dist-packages/supervision/annotators/core.py", line 4, in <module>
import cv2
File "/usr/local/lib/python3.10/dist-packages/cv2/__init__.py", line 181, in <module>
bootstrap()
File "/usr/local/lib/python3.10/dist-packages/cv2/__init__.py", line 153, in bootstrap
native_module = importlib.import_module("cv2")
File "/usr/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
root@C.10017778:~$ D
Additional
No response
Are you willing to submit a PR?
- Yes I'd like to help by submitting a PR!
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the import failure from the reported inference benchmark command in the Docker environment, following the traceback through inference_cli/main.py, inference_cli/lib/utils.py, and the supervision import of cv2. Determine whether the package can avoid the libGL dependency or must document/install the missing libraries; done means a fresh Docker install can run without this ImportError or gives clear setup guidance.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, opencv, python
- Domain
- computer-vision, devops
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100