TensorFlow无法加载libcudart.so.11.0动态库问题求助
解决方案
一、解决libcudart.so.11.0加载失败问题
方案1:修改Jupyter内核配置文件,预加载环境变量
- 激活conda环境:
conda activate atnwf - 查看当前Jupyter内核路径:
找到对应jupyter kernelspec listatnwf环境的内核路径(例如~/.local/share/jupyter/kernels/atnwf) - 编辑该路径下的
kernel.json文件,在env字段中添加LD_LIBRARY_PATH配置:
注意替换{ "argv": [ "/path/to/your/conda/envs/atnwf/bin/python", "-m", "ipykernel_launcher", "-f", "{connection_file}" ], "display_name": "atnwf", "language": "python", "env": { "LD_LIBRARY_PATH": "/usr/local/cuda-11.0/lib64:$CONDA_PREFIX/lib:$LD_LIBRARY_PATH" } }/path/to/your/conda/envs/atnwf为实际的conda环境路径,/usr/local/cuda-11.0为实际CUDA安装路径。
方案2:通过远程VSCode设置全局Jupyter环境变量
- 在远程VSCode中按下
Ctrl+,打开设置面板 - 搜索
Jupyter: Env,点击Edit in settings.json - 添加
LD_LIBRARY_PATH配置:"jupyter.env": { "LD_LIBRARY_PATH": "/usr/local/cuda-11.0/lib64:/path/to/your/conda/envs/atnwf/lib:$LD_LIBRARY_PATH" }
方案3:在conda环境激活脚本中自动设置环境变量
- 创建conda环境激活脚本目录:
mkdir -p $CONDA_PREFIX/etc/conda/activate.d - 创建环境变量配置文件
env_vars.sh:touch $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh - 写入以下内容:
每次激活export LD_LIBRARY_PATH="/usr/local/cuda-11.0/lib64:$CONDA_PREFIX/lib:$LD_LIBRARY_PATH"atnwf环境时,该变量会自动生效,Jupyter启动时会继承此配置。
二、解决libnvinfer相关库缺失警告
libnvinfer是TensorRT的核心库,直接安装适配CUDA 11.0的TensorRT版本即可:
- 激活
atnwf环境:conda activate atnwf - 使用conda安装(推荐):
(TensorRT 8.0.x系列适配CUDA 11.0,若版本不匹配可调整为对应版本号)conda install -c nvidia tensorrt=8.0.* - 若conda源无法找到,改用pip安装:
pip install tensorrt==8.0.3.4
验证步骤
- 重启远程VSCode,重新连接到远程机器
- 打开Jupyter Notebook,运行以下代码验证:
检查输出是否正常,且无import tensorflow as tf print("GPU设备列表:", tf.config.list_physical_devices('GPU'))libcudart和libnvinfer相关警告。
内容的提问来源于stack exchange,提问作者Seonpyo Kim
相关产品推荐
相关产品推荐

