どこにでもいる30代SEの学習ブログ

主にプログラミング関連の学習内容。読んだ本の感想や株式投資についても書いてます。

【python】OpenCVでImportErrorが出たときの対処法(Amazon Linux2)

「ImportError: libGL.so.1: cannot open shared object file: No such file or directory」が出たときの対応策です。

環境によって対応策は異なります。紹介するのはAmazon Linux2の対応策です。

環境

事象発生時の状況

import cv2

OpenCVをインポートすると、次のエラーが発生します。

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
/tmp/ipykernel_22658/3138839957.py in <module>
----> 1 import cv2

~/.local/lib/python3.7/site-packages/cv2/__init__.py in <module>
      3 import sys
      4 
----> 5 from .cv2 import *
      6 from .data import *
      7 

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

対応策

「mesa-libGL」をyumでインストールすると解決します。

sudo yum -y install mesa-libGL

参考文献

mesa - ImportError: libGL.so.1 on CentOS - Stack Overflow