linux环境下PYG安装,报错及解决

之前跑时空预测实验的时候,装过一次PYG,当时也折腾了好几天,网上没有比较好的教程。各种报错但是最后莫名其妙的好了,就一直用着。最近复现一些实验的时候import torch_geometric.nn又报错,十分烦躁所以全都重新弄,并把解决报错的方法记录下来以后方便查阅。

1.删除原来的环境,conda create -n pytorch python=3.7新建环境

2.安装torch和cuda,我选的是torch1.71+cuda10.1,可以到这个网址下载到本地以后直接pip install

https://download.pytorch.org/whl/torch_stable.html

3. torch-scatter,torch-sparse,torch-geometric,torch-cluster,torch-spline-conv安装

  • 版本不对应时会产生报错
  • 网上有直接给你torch,cuda,和这几个包的一两种对应特例,问题是这些特例里面的cuda版本和我都不一样
  • 看b站一个up的视频找到了PYG的官网:Installation — pytorch_geometric 2.0.5 documentation (pytorch-geometric.readthedocs.io)

里面讲的很详细,比许多博客强很多。里面提供了三种方法:

conda install pyg -c pyg  

需要torch版本大于1.80,的确可以成功。但是不太想装那么新的torch

第二种方法,其他博客里也有说,

pip install torch-scatter -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html
pip install torch-geometric

但是报错

error: command 'gcc' failed with exit status 1

这个错还不好调,故放弃。

第三种方法

pip install torch-scatter
pip install torch-sparse
pip install torch-geometric

根本不能用,下不下来,换了源也不行。

一开始就尝试从清华源网站手动下载,本地安装,但是版本对应关系不知道。

最后,进入第二步中的网站,https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html,发现里面的包版本少了很多,下载到本地以后,成功安装,也不出现版本对应问题。

4.import torch_geometric.nn

仍然报错:

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

链接库文件就好,然而要注意不要随便上网找了命令就复制,应找到本地的cudatoolkit和lib之后再链接,不放心的还可以找准OSError的地址以后链接。链接方法就是在.bashrc 中添加export LD_LIBRARY_PATH。

5.绝对没问题的修改过LD_LIBRARY_PATH继续报OSError的错

conda install cudatoolkit=10.1 后,问题解决

6.linux环境下PYG安装,报错及解决_第1张图片

 不再报错。

你可能感兴趣的:(python)