OSError: libcudart.so.11.0: cannot open shared object file: No such file or directory

完美解决:OSError: libcudart.so.11.0: cannot open shared object file: No such file or directory

OSError: libcudart.so.11.0: cannot open shared object file: No such file or directory

环境

  • Ubuntu 22.04 LTS
  • python 3.9
  • torch 1.11.0

错误详情

运行 python train.py 报错如下:

  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/lightning_utilities/core/imports.py", line 77, in compare_version
    pkg = importlib.import_module(package)
  File "/data/miniconda3/envs/py39/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/__init__.py", line 1, in <module>
    from torchaudio import (  # noqa: F401
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 135, in <module>
    _init_extension()
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 105, in _init_extension
    _load_lib("libtorchaudio")
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 52, in _load_lib
    torch.ops.load_library(path)
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torch/_ops.py", line 220, in load_library
    ctypes.CDLL(path)
  File "/data/miniconda3/envs/py39/lib/python3.9/ctypes/__init__.py", line 382, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: libcudart.so.11.0: cannot open shared object file: No such file or directory

错误原因

torch 的某个库与 torch 版本不兼容,上面的提示是 torchaudio 异常

错误排查

先执行:

pip list|grep torch

输出:

pytorch-lightning        1.7.6
torch                    1.11.0
torchaudio               0.13.0
torchmetrics             1.2.1
torchvision              0.12.0

一个一个的排除

$ python
import torchaudio
import torchmetrics
import torchmetrics

import torchaudio 得到错误:

  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/__init__.py", line 1, in <module>
    from torchaudio import (  # noqa: F401
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 135, in <module>
    _init_extension()
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 105, in _init_extension
    _load_lib("libtorchaudio")
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 52, in _load_lib
    torch.ops.load_library(path)
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torch/_ops.py", line 220, in load_library
    ctypes.CDLL(path)
  File "/data/miniconda3/envs/py39/lib/python3.9/ctypes/__init__.py", line 382, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: libcudart.so.11.0: cannot open shared object file: No such file or directory

import pytorch_lightning 得到错误:

  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/__init__.py", line 1, in <module>
    from torchaudio import (  # noqa: F401
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 135, in <module>
    _init_extension()
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 105, in _init_extension
    _load_lib("libtorchaudio")
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torchaudio/_extension.py", line 52, in _load_lib
    torch.ops.load_library(path)
  File "/data/miniconda3/envs/py39/lib/python3.9/site-packages/torch/_ops.py", line 220, in load_library
    ctypes.CDLL(path)
  File "/data/miniconda3/envs/py39/lib/python3.9/ctypes/__init__.py", line 382, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: libcudart.so.11.0: cannot open shared object file: No such file or directory

可知 torchaudio、pytorch_lightning、torchmetrics 这几个包与 torch 版本不兼容

torch                    1.11.0

对应版本:
pytorch_lightning        2.0
torchaudio               0.11.0
torchmetrics             0.11.1

解决方法

pip安装

pip install pytorch_lightning==2.0 torchaudio==0.11.0  torchmetrics==0.11.1    -i https://mirrors.aliyun.com/pypi/simple/

验证

python train.py

正常运行,完美解决!!

参考

https://github.com/pytorch/vision#installation
https://pytorch.org/audio/main/installation.html#compatibility-matrix
https://github.com/pytorch/text
https://pytorch.org/get-started/previous-versions/

回答: 在VScode中出现ImportError: libcudart.so.11.0: cannot open shared object file: No such file or directory的错误,可能是由于缺少CUDA库文件导致的。根据引用\[1\]和引用\[2\]的描述,这个错误可以通过添加CUDA库文件路径来解决。具体步骤如下: 1. 首先,确认你的系统中是否安装了CUDA,并且安装的版本与你的代码所需的版本一致。 2. 找到存在libcudart.so.11.0的位置,比如在/usr/local/cuda-11.X/lib64/位置下找到了该文件。 3. 打开终端或命令行窗口,输入以下命令,将CUDA库文件路径添加到LD_LIBRARY_PATH环境变量中: ``` export LD_LIBRARY_PATH=/usr/local/cuda-11.X/lib64/:$LD_LIBRARY_PATH ``` 4. 如果你希望这个设置一直有效,可以将上述命令添加到你的bashrc文件中。 通过以上步骤,你应该能够解决ImportError: libcudart.so.11.0: cannot open shared object file: No such file or directory的问题。希望对你有帮助! #### 引用[.reference_title] - *1* *2* [ImportError: libcudart.so.10.2: cannot open shared object file: No such file or directory解决方案](https://blog.csdn.net/weixin_43178406/article/details/130891578)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [【debug】ImportError:libcudart.so.11.0:cannot open share object file:No such file or directory](https://blog.csdn.net/qq_38308388/article/details/129528132)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

szZack

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值