报错1:subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1.
解决方案:将anaconda环境下的 lib/python3.8/site-packages/torch/utils/cpp_extension.py 文件,将['ninja','-v']改成['ninja','--v'] 或者['ninja','--version']
上面这个博客里列出了两种方法,pytorch降级我没有尝试,第二种方法尝试了但没用,重装ninja也没用,只有改-v可以解决。
报错2:OSError: CUDA_HOME environment variable is not set. Please set it to your CUDA install root.
解决方法:这个报错是在pycharm里单步调试的时候报错的,但其实在终端运行程序没有问题,原因不太清楚,尝试了设置CUDA_HOME环境变量也没有用,最后换到vscode做单步调试解决。
报错3:一些.inverse函数的错误
这里只用把变量先放到cpu上inverse再转到cuda上即可,例如将
global2keyego = torch.inverse(keyego2global.double())
修改为:
global2keyego = torch.inverse(keyego2global.cpu().double()).cuda()