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

TensorFlow导入报错:undefined symbol: _ZTIN6snappy4SinkE 求助

解决TensorFlow导入时的Snappy库未定义符号错误

问题背景

Ubuntu 22.04系统下,conda环境(Python 3.11)导入TensorFlow v2.15.0时出现以下错误:

ImportError: /home/gimhara/anaconda3/envs/tf-env/lib/python3.11/site-packages/tensorflow/python/platform/../../libtensorflow_framework.so.2: undefined symbol: _ZTIN6snappy4SinkE

该错误源于TensorFlow依赖的Snappy压缩库版本不兼容或环境未正确链接到适配的库,常规重装TensorFlow、安装系统级libsnappy-dev无法解决。

解决方案

1. 在conda环境内安装适配的Snappy库

系统级的Snappy库可能与conda环境内的TensorFlow不兼容,直接在环境内安装conda维护的版本:

conda activate tf-env
conda install -c conda-forge snappy

2. 强制conda环境优先使用内部库

设置环境变量,让动态链接器优先查找conda环境内的库文件,避免调用系统库:

export LD_LIBRARY_PATH=$CONDA_PREFIX/lib:$LD_LIBRARY_PATH

若要永久生效,将命令添加到环境激活脚本:

echo 'export LD_LIBRARY_PATH=$CONDA_PREFIX/lib:$LD_LIBRARY_PATH' >> $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh

3. 用conda重新安装匹配版本的TensorFlow

避免pip与conda的依赖冲突,彻底卸载后用conda-forge安装:

# 卸载现有TensorFlow
pip uninstall tensorflow -y
conda uninstall tensorflow -y

# 安装指定版本
conda install -c conda-forge tensorflow=2.15.0 python=3.11

4. 验证修复

激活环境后运行测试:

import tensorflow as tf
print(tf.__version__)

备选方案:创建全新conda环境

若旧环境存在依赖污染,直接创建干净环境:

conda create -n new-tf-env python=3.11
conda activate new-tf-env
conda install -c conda-forge tensorflow=2.15.0 snappy

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 07:26:08