北海勇将king2middle 2024-04-17 15:12 采纳率: 0%
浏览 118

在hairclipv2项目中报错fused.so无法找到

在导入的时候就报错ImportError: /home/zhao/.cache/torch_extensions/fused/fused.so: cannot open shared object file: No such file or directory
然后在进入(base) zhao@zhao:~/.cache/torch_extensions/fused目录下输入ninja报错

[[1/2] /usr/local/cuda/bin/nvcc  -ccbin...el.cu -o fused_bias_act_kernel.cuda.o 
FAILED: fused_bias_act_kernel.cuda.o 
/usr/local/cuda/bin/nvcc  -ccbin /home/zhao/anaconda3/bin/x86_64-conda-linux-gnu-cc -DTORCH_EXTENSION_NAME=fused -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_gcc\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1011\" -isystem /home/zhao/anaconda3/lib/python3.9/site-packages/torch/include -isystem /home/zhao/anaconda3/lib/python3.9/site-packages/torch/include/torch/csrc/api/include -isystem /home/zhao/anaconda3/lib/python3.9/site-packages/torch/include/TH -isystem /home/zhao/anaconda3/lib/python3.9/site-packages/torch/include/THC -isystem /home/zhao/anaconda3/include -isystem /home/zhao/anaconda3/include/python3.9 -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_86,code=compute_86 -gencode=arch=compute_86,code=sm_86 --compiler-options '-fPIC' -std=c++14 -c /home/zhao/SY/HairCLIPv2-main/models/stylegan2/op/fused_bias_act_kernel.cu -o fused_bias_act_kernel.cuda.o 
x86_64-conda-linux-gnu-cc: fatal error: cannot execute 'cc1plus': execvp: No such file or directory
compilation terminated.
nvcc fatal   : Failed to preprocess host compiler properties.
ninja: build stopped: subcommand failed.]()


  • 写回答

6条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-04-17 15:12
    关注

    引自免费微信小程序:皆我百晓生

    看起来你在尝试运行HairCLIP v2项目时遇到了一些编译错误。这个问题可能是因为缺少了某些依赖项或者是编译环境配置不正确。下面是解决这个问题的一些步骤:

    1. 首先,确保你的系统已经安装了必要的库和工具,特别是针对CUDA的开发环境。你需要安装nvcc(NVIDIA CUDA Compiler),以及与你的CUDA版本匹配的cuDNN库。

      对于Ubuntu或Debian系统,你可以通过以下命令安装CUDA和cuDNN:

      sudo apt-get update
      sudo apt-get install nvidia-cuda-toolkit
      

      然后下载对应CUDA版本的cuDNN库,可以从NVIDIA官方网站下载:https://developer.nvidia.com/cudnn

      安装cuDNN:

      tar -zxvf cudnn-<version>.tar.gz
      cd cuda
      sudo cp lib64/* /usr/lib/x86_64-linux-gnu/
      sudo cp include/* /usr/include/
      
    2. 检查CUDA和cuDNN是否安装成功:

      nvcc --version
      cat /usr/include/cudnn.h | grep CUDNN_MAJOR -A 2
      
    3. 如果你使用的是Anaconda,确保你的Conda环境中已经激活,并且在该环境中安装了torch及其相关的依赖项。在终端中执行以下命令:

      conda activate base
      pip install torch torchvision torchaudio
      
    4. 如果上述步骤没有解决问题,你可能需要手动编译缺失的库。首先,确保你已经安装了Python的setuptools和wheel包:

      pip install setuptools wheel
      
    5. 尝试重新构建 HairCLIP 的依赖项。在项目根目录下执行以下命令:

      python setup.py develop
      
    6. 如果仍然有问题,尝试更新你的pip和setuptools:

      pip install --upgrade pip setuptools wheel
      
    7. 如果问题依然存在,那么可能是由于Host Compiler的问题。你需要检查你的GCC和g++是否已经安装并且路径设置正确。在终端中输入:

      gcc --version
      g++ --version
      

      如果没有安装或者路径未设置正确,你需要安装它们并确保在PATH中能找到它们。对于Ubuntu或Debian,可以通过以下命令安装:

      sudo apt-get install build-essential
      

    按照以上步骤操作,应该可以解决你在安装HairCLIP v2过程中遇到的问题。如果还有其他错误或问题,请随时提供更多的信息,我会尽力帮助你。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月17日