180 votes

ImportError : libGL.so.1 : cannot open shared object file : Aucun fichier ou répertoire de ce type

J'essaye d'exécuter cv2, et quand j'essaye de l'importer j'obtiens

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

la solution proposée en ligne consiste à installer

apt install libgl1-mesa-glx

mais c'est déjà installé et c'est la dernière version.toute aide serait vraiment utile.merci d'avance.

0 votes

Comment l'avez-vous installé ? pip install opencv-python ? Cela pourrait être un autre problème. Voir github.com/matplotlib/matplotlib/issues/9954 . Essayez de créer un virtualenv et testez-le là. Pouvez-vous partager votre extrait de code où l'exception est levée ?

359voto

Tushar Kolhe Points 31
RUN apt-get update ##[edited]
RUN apt-get install ffmpeg libsm6 libxext6  -y

Ajoutez ces lignes à votre Dockerfile

23 votes

À quoi cela sert-il et pourquoi en ai-je besoin pour le cv2 ?

0 votes

J'ai une erreur : "E : Repository ' deb.debian.org/debian buster-updates InRelease' a changé sa valeur 'Suite' de 'stable-updates' à 'oldstable-updates'". Je l'ai corrigé en utilisant : sudo apt-get update --allow-releaseinfo-change

1 votes

Cette solution a fonctionné pour moi, puis a cessé de fonctionner pendant la construction de Docker. J'ai changé mon image de base pour python:3.8-slim-buster comme suggéré par @SuryaTej, ce qui a fonctionné au début, mais a ensuite cessé de fonctionner également. Je pensais que c'était peut-être un problème de réseau de mon côté, mais la construction échoue plus souvent qu'autrement. > #8 254.6 Get:197 deb.debian.org/debian buster/main amd64 xdg-user-dirs amd64 0.17-2 [53.8 kB] > #8 254.6 E : Failed to fetch deb.debian.org/debian/pool/main/libp/libpng1.6/ Hash Sum mismatch > #Dernière modification signalée : Mon, 08 Apr 2019 10:11:25

48voto

Andrej Chudy Points 121

C'est une solution un peu meilleure à mon avis. Paquet python3-opencv inclut toutes les dépendances système d'OpenCV.

RUN apt-get update && apt-get install -y python3-opencv
RUN pip install opencv-python

2 votes

J'utilise python:buster . la solution ci-dessus n'a pas fonctionné pour moi : ffmpeg semble être déprécié et j'avais toujours des erreurs d'écriture. apt-get install -y python3-opencv a fait l'affaire. Merci

0 votes

Il y a toutes les libertés que vous pouvez désirer. Je ne l'ai pas essayé, mais l'installation de pip est-elle toujours nécessaire ?

3 votes

@MarkCarpenterJr - L'utilisation de pip vous aidera à garder la version packagée dans un état défini. Si vous utilisez la version du système d'exploitation, vous risquez de vous retrouver avec des dépendances changeantes si votre distro change de paquet. Ce n'est probablement pas ce que vous souhaitez.

2voto

Jens Timmerman Points 1448

J'ai eu le même problème sur centos 8 après avoir utilisé pip3 install opencv sur un serveur sans interface graphique qui manque de toutes sortes de bibliothèques graphiques.

dnf install opencv

fait appel à toutes les dépendances nécessaires.

1voto

Veuillez exécuter les commandes suivantes

sudo apt update

sudo apt install libgl1-mesa-glx

Lien- https://github.com/conda-forge/pygridgen-feedstock/issues/10

1voto

Ankur Points 9

Voici la solution dont vous avez besoin :

pip install -U opencv-python
apt-get upgrade
apt update && apt install -y libsm6 libxext6 ffmpeg libfontconfig1 libxrender1 libgl1-mesa-glx

0 votes

apt-get upgrade met à jour tous les paquets installés, ce qui est complètement exagéré

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X