今天在跑Soft Rasterizer (SoftRas)这一篇论文代码时出现了很多的问题,由于是一篇2019年的论文,有很多版本兼容的问题,于是记录下来。
前言
有一些由于版本兼容出现的警告版本过高/过低/不匹配其实大多数是不用管的,注意区分
CUDA 10不兼容
首先是按照论文所给的环境(Python3 and PyTorch 1.6.0. CUDA (10.1))跑不了,因为CUDA 10不能兼容30系显卡。
所以要更换兼容更高版本的PyTorch,我这里使用的是PyTorch 1.9.0,使用如下代码可以查看版本:
1 | python - <<-EOF |

gcc/g++版本过高
主要参考以下博客Linux系统 利用conda更改gcc、g++版本(非root用户)建立软连接实现,注意不要忘记下载g++
gcc和g++版本一定要检查是否一样
gcc降级导致环境变量崩溃
参考博客非root用户构建项目代码踩坑记录_conda 安装 gcc_cannot find /lib64/libpthread.so.0
英文版ld-cannot-find-lib64-libpthread-so-0-ld-cannot-find-usr-lib64-libpthread-non
1 | cannot find /lib64/libpthread.so.0 |
具体为什么会这样呢,可能还要到以后去探究
由于更改版本无法安装的依赖
比如我这里python是3.7,而pytorch是1.9.0,这样导致pytorch需要的包没有或者没有对应的版本,其实直接pip/conda安装对应的最高版本/库即可
参考链接:
可微渲染 SoftRas 实践
Linux系统 利用conda更改gcc、g++版本(非root用户)
非root用户构建项目代码踩坑记录_conda 安装 gcc_cannot find /lib64/libpthread.so.0
ld-cannot-find-lib64-libpthread-so-0-ld-cannot-find-usr-lib64-libpthread-non
error: Couldn’t find a setup script in /tmp/easy_install-ian85kkj/scikit_image-0.23.2.tar.gz