You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行conda安装PyTorch+CUDA命令后nvcc未安装的问题咨询

问题:Conda环境中PyTorch依赖CUDA但未安装nvcc

环境搭建步骤

我按以下步骤创建了包含Python 3.8、CUDA 11.8和PyTorch 2.4.1的conda环境:

$ conda create -n py38_torch241_CUDA118 python=3.8
$ conda activate py38_torch241_CUDA118
$ conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

当前安装状态

Python和PyTorch已正常安装:

$ python --version
Python 3.8.20

$ pip list | grep torch
torch               2.4.1
torchaudio          2.4.1
torchvision         0.20.0

遇到的问题

检查CUDA相关工具时发现nvcc未安装:

$ nvcc
Command 'nvcc' not found, but can be installed with:
sudo apt install nvidia-cuda-toolkit

这导致后续依赖nvcc的Git仓库无法正常搭建。我已尝试删除所有conda包和环境后重新操作,但问题依旧。

疑问

  1. 是否需要执行sudo apt install nvidia-cuda-toolkit来安装nvcc?
  2. 为何上述conda安装命令未自动安装nvcc?

调试信息

$ conda --version
conda 24.5.0

$ nvidia-smi
Sat Oct 19 02:12:06 2024       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.90.07              Driver Version: 550.90.07      CUDA Version: 12.4     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                        User-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA RTX 2000 Ada Gene...    Off |   00000000:01:00.0 Off |                  N/A |
| N/A   48C    P0            588W /   35W |       8MiB /   8188MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
                                                                                         
+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A      1859      G   /usr/lib/xorg/Xorg                              4MiB |
+-----------------------------------------------------------------------------------------+

$ which nvidia-smi
/usr/bin/nvidia-smi

注:设备为NVIDIA RTX 2000 Ada Generation,nvidia-smi显示CUDA版本为12.4,该驱动是未安装conda时手动安装的。

已尝试的操作

我尝试将CUDA_HOME路径设置为conda环境目录,但问题仍未解决:

$ export CUDA_HOME=$CONDA_PREFIX

$ echo $CUDA_HOME
/home/User-M/miniconda3/envs/FairMOT_py38_torch241_CUDA118

$ which nvidia-smi
/usr/bin/nvidia-smi

$ nvcc
Command 'nvcc' not found, but can be installed with:
sudo apt install nvidia-cuda-toolkit

解答

1. 是否需要通过apt安装nvidia-cuda-toolkit?

不建议直接执行sudo apt install nvidia-cuda-toolkit,这会在系统级别安装CUDA Toolkit,大概率会和conda环境内的CUDA 11.8版本冲突,引发后续依赖版本匹配问题。

2. 为何conda安装命令未自动安装nvcc?

你执行的conda install pytorch-cuda=11.8仅安装了CUDA运行时库,而非完整的CUDA Toolkit(包含nvcc编译器等开发工具)。PyTorch默认只需要运行时库就能正常调用GPU,但如果要编译自定义CUDA算子或依赖nvcc的项目,就需要手动安装完整的CUDA Toolkit。

解决方法

在激活的conda环境内安装完整的CUDA 11.8 Toolkit,执行以下命令:

conda install cuda=11.8 -c nvidia

安装完成后,重新激活环境或执行source $CONDA_PREFIX/bin/activate,此时运行nvcc --version就能正常显示版本信息。

补充说明

  • 你的显卡驱动版本(550.90.07)支持CUDA 12.4,向下兼容CUDA 11.8,因此环境内的CUDA 11.8可以正常工作。
  • 无需手动修改CUDA_HOME,conda安装的CUDA Toolkit会自动配置环境变量,激活环境后nvcc会被自动识别。

内容的提问来源于stack exchange,提问作者MsA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 05:34:54