pycaharm中run运行出现OSError: libcusparse.so.11: cannot open shared object file: No such file or director

avatar
作者
筋斗云
阅读量:0

OSError: libcusparse.so.11: cannot open shared object file: No such file or director

使用pytorch进行一些矩阵运算时,通常需要安装cluster,scatter,sparse,spline几个依赖包。

torch四个依赖包cluster,scatter,sparse,spline的安装

  1. 首先查看torch的版本
#conda activate envname,激活虚拟环境 #python3#进入python console import torch#导入torch包 print(torch.__version__)#查看torch版本 

我的虚拟环境中安装的torch版本时1.11.0+cu113
在这里插入图片描述
2. 在torch-geometric官网中去查看对应版本的依赖包
在这里插入图片描述
找到版本的地方进去下载应合python版本和系统的包,我下载的是以下四个版本

torch cluster-1.6.0-cp37-cp37m-linux x86 64.whl
torch scatter-2.0.9-cp37-cp37m-linux x86 64.whl
torch_sparse-0.6.13-cp37-cp37m-linux x86 64.whl
torch_spline conv-1.2.1-cp37-cp37m-linux x86 64.whl
如果是远程linux中安装,可以用XFTP等远程文件传输助手将其上传到linux服务器中。
然后用pip命令安装即可:

pip isntall torch_cluster-1.6.0-cp37-cp37m-linux_x86_64.whl  pip isntall torch scatter-2.0.9-cp37-cp37m-linux x86 64.whl pip isntall torch_sparse-0.6.13-cp37-cp37m-linux x86 64.wh pip isntall torch_spline conv-1.2.1-cp37-cp37m-linux x86 64.whl  

在pycharm运行时出现OSError: libcusparse.so.11: cannot open shared object file: No such file or director错误

  1. 首先使用find命令查找linux中是否存在libcusparse.so.11这个文件
find / -name libcufft.so.11 2>/dev/null 

在这里插入图片描述
在另外的目录下存在这个文件,那么就可以直接将这个文件复制到我们的环境目录下。

cp -r srcpath dicpath #我的dicpath=XXX/anaconda3/envs/py37/lib/python3.7/site-packages,其中XXX替换为自己服务器上的目录 
  1. 将上述路径添加到环境变量中
$ export PATH=/XXX/anaconda3/envs/py37/bin:$PATH $ echo $PATH  $ export CPATH=/XXX/anaconda3/envs/py37/include:$CPATH $ echo $CPATH  $ export LD_LIBRARY_PATH=/XXX/anaconda3/envs/py37/lib64:$LD_LIBRARY_PATH $ echo $LD_LIBRARY_PATH  

如果只添加LD_LIBRARY_PATH环境变量也可以正常运行的话,可以只添加这一个。
这时候在linux的terminal应该能够正常运行了,但是在pycharm中运行还是会报一样的错误,那么就去设置以下pycharm中的运行环境
在这里插入图片描述
在这里插入图片描述
在环境变量中将刚刚的“LD_LIBRARY_PATH=/usr/local/cuda/lib:$LD_LIBRARY_PATH $ echo $LD_LIBRARY_PATH”添加进去,在pycharm中就可以正常运行了。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!