今天在安装torch_points3d时遇到了错误
命令 pip install torch_points3d
错误内容:
Running setup.py clean for torch-points-kernels
Building wheel for torch-scatter (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /home/liuchi/miniconda3/envs/mani_skill/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-sm6zf9fb/torch-scatter_1ca30b54ab684d35ba2f7207d1fbe08f/setup.py'"'"'; __file__='"'"'/tmp/pip-install-sm6zf9fb/torch-scatter_1ca30b54ab684d35ba2f7207d1fbe08f/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-yc1ekk1p
cwd: /tmp/pip-install-sm6zf9fb/torch-scatter_1ca30b54ab684d35ba2f7207d1fbe08f/
Complete output (19 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.8
creating build/lib.linux-x86_64-3.8/torch_scatter
copying torch_scatter/utils.py -> build/lib.linux-x86_64-3.8/torch_scatter
copying torch_scatter/placeholder.py -> build/lib.linux-x86_64-3.8/torch_scatter
copying torch_scatter/segment_csr.py -> build/lib.linux-x86_64-3.8/torch_scatter
copying torch_scatter/__init__.py -> build/lib.linux-x86_64-3.8/torch_scatter
copying torch_scatter/segment_coo.py -> build/lib.linux-x86_64-3.8/torch_scatter
copying torch_scatter/scatter.py -> build/lib.linux-x86_64-3.8/torch_scatter
creating build/lib.linux-x86_64-3.8/torch_scatter/composite
copying torch_scatter/composite/std.py -> build/lib.linux-x86_64-3.8/torch_scatter/composite
copying torch_scatter/composite/__init__.py -> build/lib.linux-x86_64-3.8/torch_scatter/composite
copying torch_scatter/composite/softmax.py -> build/lib.linux-x86_64-3.8/torch_scatter/composite
copying torch_scatter/composite/logsumexp.py -> build/lib.linux-x86_64-3.8/torch_scatter/composite
running build_ext
error: [Errno 2] No such file or directory: '/home/liuchi/miniconda3/envs/mani_skill/bin/nvcc'
提示缺少nvcc文件。nvcc文件存在于cuda文件夹下,所以,我先把/usr/local/cuda/bin/nvcc复制到/home/liuchi/miniconda3/envs下,结果还是不行,出现新的错误。查看错误,是因为python在anaconda文件夹下寻找nvcc,于是,我查看了当前环境下的CUDA_HOME:
python
from torch.utils.cpp_extension import CUDA_HOME
print(CUDA_HOME)
结果显示是/home/liuchi/miniconda3/envs/mani_skill/bin,显然有问题。于是,我把CUDA_HOME设置为cuda所在正确目录:
export CUDA_HOME=/usr/local/cuda
然后执行命令
pip install torch_points3d
安装成功!