TensorFlow安装报错排查:无法找到cudart64_90.dll问题分析
解决TensorFlow导入时找不到
cudart64_90.dll的问题 从你的报错栈信息来看,核心问题非常明确:你当前安装的TensorFlow版本依赖CUDA 9.0,但系统找不到对应的cudart64_90.dll文件,且该文件所在路径未被添加到系统%PATH%环境变量中。下面给你一步步的排查和解决方案:
1. 确认CUDA版本匹配
首先检查你实际安装的CUDA版本是否为TensorFlow要求的9.0:
- 打开命令行,输入
nvcc --version,查看输出的CUDA版本号。如果不是9.0,建议卸载现有CUDA版本,重新安装CUDA 9.0。
2. 验证环境变量配置是否生效
即使安装了CUDA 9.0,也需要确保相关路径已添加到系统%PATH%:
- 找到CUDA 9.0的安装目录(默认路径一般是
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0) - 确认以下两个路径已添加到系统
PATH环境变量:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\binC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp
- 重要提示:修改环境变量后,必须关闭所有已打开的命令行窗口和Python Shell,重新启动才能让新配置生效。
3. 检查DLL文件是否存在
- 导航到
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin目录,确认cudart64_90.dll文件是否存在。如果不存在,说明CUDA 9.0安装不完整,需要重新运行安装程序,选择「自定义安装」确保所有核心组件被正确安装。
4. 可选:更换兼容的TensorFlow版本
如果你不想切换到CUDA 9.0,也可以安装与你现有CUDA版本匹配的TensorFlow版本,比如:
- CUDA 10.0 对应 TensorFlow 1.13.x / 2.0.x
- CUDA 11.0 对应 TensorFlow 2.4.x 及以上版本
你可以通过命令pip install tensorflow==<对应版本号>来安装兼容版本。
附你提供的报错栈信息:
>>> import tensorflow as tf Traceback (most recent call last): File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\platform\self_check.py", line 75, in preload_check ctypes.WinDLL(build_info.cudart_dll_name) File"C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\ctypes\__init__.py", line 348, in __init__ self._handle = _dlopen(self._name, mode) OSError: [WinError 126] 找不到指定的模块 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\__init__.py", line 24, in <module> from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module> from tensorflow.python import pywrap_tensorflow File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in <module> self_check.preload_check() File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\platform\self_check.py", line 82, in preload_check % (build_info.cudart_dll_name, build_info.cuda_version_number)) ImportError: Could not find 'cudart64_90.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 9.0 from this URL: https://developer.nvidia.com/cuda-toolkit
内容的提问来源于stack exchange,提问作者Troy Bick




