在服务器配置完虚拟环境以及安装完各种所需库后,发现报错Traceback (most recent call last): File "/root/yolov5-master/yolov5-master/train.py", line 48, in <module> import val as validate # for end-of-epoch mAP File "/root/yolov5-master/yolov5-master/val.py", line 39, in <module> from models.common import DetectMultiBackend File "/root/yolov5-master/yolov5-master/models/common.py", line 18, in <module> import cv2 File "/opt/conda/envs/yolov5/lib/python3.9/site-packages/cv2/__init__.py", line 181, in <module> bootstrap() File "/opt/conda/envs/yolov5/lib/python3.9/site-packages/cv2/__init__.py", line 153, in bootstrap native_module = importlib.import_module("cv2") File "/opt/conda/envs/yolov5/lib/python3.9/importlib/__init__.py", line 127, 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。

        这个错误表明在运行 python train.py 时,出现了与 libGL.so.1 相关的问题。libGL.so.1 是用于 OpenGL 的共享库,可能由于缺失或不正确配置引起了问题。

        为了解决这个问题,你可以尝试以下几个步骤:

  1. 安装 libgl1-mesa-glx: 在某些系统上,你可以通过安装 libgl1-mesa-glx 软件包来解决缺失的 libGL.so.1 问题。使用以下命令安装:

    sudo apt-get update
    sudo apt-get install -y libgl1-mesa-glx
    
  2. 如果你使用的是其他 Linux 发行版,可以使用相应的包管理工具来安装相似的软件包。

  3. 检查 NVIDIA 驱动: 如果你的系统上有 NVIDIA 显卡,确保你已经安装了正确的 NVIDIA 驱动。有时,重新安装或更新 NVIDIA 驱动可能会解决此问题。

  4. 设置 LD_LIBRARY_PATH: 在运行前,尝试设置 LD_LIBRARY_PATH 环境变量,指向包含 libGL.so.1 的目录。例如:

    export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
    

    在这里,/usr/lib/x86_64-linux-gnulibGL.so.1 通常位于的目录。

      尝试上述步骤后,再次运行 python train.py 看看问题是否解决。如果问题仍然存在,可能需要更详细的检查和调试。

注:一般在进行第一步骤安装软件包后,即可解决问题;如果还未解决问题,再尝试进行后三步操作。

11-29 05:09