问题描述:
我的环境python3.8,torch1.31-cu116,安装dgl时提示报错如下:
File
“/home/zhangch/anaconda3/lib/python3.8/site-packages/dgl/_ffi/base.py”,
line 45, in
_LIB, _LIB_NAME, _DIR_NAME = _load_lib() File “/home/zhangch/anaconda3/lib/python3.8/site-packages/dgl/_ffi/base.py”,
line 35, in _load_lib
lib = ctypes.CDLL(lib_path[0]) File “/home/zhangch/anaconda3/lib/python3.8/ctypes/init.py”, line 381,
in init
self._handle = _dlopen(self._name, mode) OSError: libcurand.so.10: cannot open shared object file: No such file or directory
网上比较多的提示时需要你重新安装cuda,或者是在brashsrc中添加export,我基本是都做了操作的,结果没有解决我的问题。那下面是我的解决思路:
1、就是dgl在运行的时候需要libcurand.so.10这个包,那么我们把这个包给装上就可以了,但是问题是装在哪呢?
2、直接看源码,源码中提示是lib_path[0],于是我找到这行源码,并打印了其中lib_path,输入为:/home/username/anaconda3/lib/python3.8/site-packages/dgl/libdgl.so。
3、根据输出的地址,我果断判定,可以在/home/username/anaconda3/lib/python3.8/site-packages/dgl/地址下面把libcurand.so.10这个包放过去。结果成功了。
总结:最终的解决思路是将 libcurand.so.10放入到dgl的路径下面。 libcurand.so.10下载地址为链接:https://pan.baidu.com/s/1UzEPi2skog1hpScEMEr3Eg
提取码:cest