问题描述:
在centos上使用python的某个库,有用到opencv,但在import时报以下错误:
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
若是系统可以连接外网,则只需一条命令,安装libGL库即可:
yum install mesa-libGL.x86_64
但如果是在内网,比较麻烦,yum install 没有网络安装不了。因此需要在外网版本对应的操作系统上,手动下载 libGL及其依赖库,若没有可用服务器的话,可以临时申请个云服务器,用yumdownloader命令下载:
yumdownloader --destdir=./libGL --resolve mesa-libGL.x86_64
下载结果如下图
将所下载的结果打包拷贝至内网,逐个手动安装,安装顺序应该类似上图:
rpm -Uvh 具体的.rpm
rpm安装若报错:
can‘t create 事务 lock on /var/lib/rpm/.rpm.lock (权限不够)
一般是没有权限,要么加上权限再安装;
也可以通过另一种方式来解决。可通过解压rpm包的方式,对顺序也没有要求:
rpm2cpio 具体的.rpm |cpio -idvm
解压后把结果文件拷贝到对应python环境下的lib文件夹下即可。