如何在WSL2中安装带CUDA的PyTorch并解决libcuda.so错误
解决libcuda.so找不到的PyTorch安装错误
错误本质
libcuda.so是NVIDIA显卡驱动的核心依赖库,出现这个错误说明系统未正确安装NVIDIA驱动,或者驱动的库路径未被系统识别,和PyTorch/CUDA toolkit的安装包本身无关。
解决步骤
第一步:检查NVIDIA驱动状态
运行以下命令验证驱动是否安装:nvidia-smi如果命令报错,说明驱动未安装/安装失败,需要先安装对应驱动:
- 桌面Ubuntu系统:直接执行
sudo ubuntu-drivers autoinstall自动匹配安装(安装前需禁用nouveau驱动) - 服务器/手动安装:下载对应显卡型号、系统版本的NVIDIA驱动包,按指引安装(注意关闭X服务或进入单用户模式)
- 桌面Ubuntu系统:直接执行
第二步:确认驱动与CUDA版本兼容
你安装的是pytorch-cuda=11.7,要求NVIDIA驱动版本至少为450.80.02。如果nvidia-smi显示的驱动版本低于这个值,需要升级驱动。第三步:配置驱动库路径(如果驱动已装但仍报错)
找到libcuda.so所在的目录,通常路径为/usr/lib/nvidia-<你的驱动版本>(比如/usr/lib/nvidia-470),将其添加到系统库路径:- 临时生效(仅当前终端):
替换export LD_LIBRARY_PATH=/usr/lib/nvidia-xxx:$LD_LIBRARY_PATHxxx为你的实际驱动版本号 - 永久生效(重启后仍有效):
编辑~/.bashrc(Ubuntu)或~/.bash_profile(CentOS)文件,添加上述export命令,然后执行:source ~/.bashrc
- 临时生效(仅当前终端):
第四步:验证修复效果
- 重新运行
nvidia-smi,确认能正常显示显卡、驱动、CUDA版本信息 - 测试PyTorch的CUDA可用性:
输出import torch print(torch.cuda.is_available())True则说明问题解决
- 重新运行
注意事项
- Conda安装的
pytorch-cuda仅包含CUDA toolkit,不会自动安装NVIDIA驱动,驱动必须单独安装 - 如果是集群服务器,可能需要先通过
module load nvidia加载NVIDIA驱动模块
内容的提问来源于stack exchange,提问作者reactor
相关产品推荐
相关产品推荐

