为了账号安全,请及时绑定邮箱和手机立即绑定

找不到 TensorFlow 需要的版本“GLIBCXX_3.4.21”

找不到 TensorFlow 需要的版本“GLIBCXX_3.4.21”

jeck猫 2021-11-23 16:52:29
我正在尝试使用机器学习库在debian服务器上部署一个Flask应用程序,到目前为止我使用大多数 ML 库进行了管理,但是由于TensorFlow,我对它进行了大量研究,但我没有找到可行的解决方案。PS:我正在为我的应用程序使用 3.7 python venv导入错误:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:未找到版本“GLIBCXX_3.4.21”(/flask/wstest/lib/python3.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal 需要) .so) Mar 01 15:32:11 django gunicorn[8803]:无法加载本机 TensorFlow 运行时。我清楚地错过了GLIBCXX 3.4.21因为strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX节目3.4.20为最新版本。尝试了这个修复add-apt-repository ppa:ubuntu-toolchain-r/test 给出了这个:尝试 apt-get 更新,得到这个W:无法获取http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/dists/jessie/main/binary-amd64/Packages 404 Not Found还尝试更新 libgcc 和 libstdc++6,说我有最新版本。编辑:我怀疑 Debian 8 Jessie 不支持比 3.4.20 更高的 glibcxx 版本。
查看完整描述

3 回答

?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

这是 Ubuntu 16.04 中此问题的解决方案


sudo apt-get install software-properties-common

sudo add-apt-repository ppa:ubuntu-toolchain-r/test

sudo apt-get update

sudo apt-get install gcc-4.9

sudo apt-get upgrade libstdc++6

您可以检查是否获得了 GLIBCXX 所需的版本,如下所示:


strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX


查看完整回答
反对 回复 2021-11-23
?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

如果您使用的是 Anaconda/Miniconda,您还可以libstdc++.so.6通过设置LD_LIBRARY_PATH环境变量让您的操作系统使用随安装提供的内容。假设您安装了 Miniconda/home/whatever/miniconda3并且您正在使用bash. 然后将此添加到您的~/.bashrc

export LD_LIBRARY_PATH:/usr/lib/x86_64-linux-gnu/:/home/whatever/miniconda3/lib

source ~/.bashrc 或者重新启动你的外壳,你应该很高兴。

另请参阅:https : //gcc.gnu.org/onlinedocs/libstdc++/faq.html#faq.how_to_set_pathsHow to update libstdc++.so.6 or change the file to use on Tensorflow, Python


查看完整回答
反对 回复 2021-11-23
?
精慕HU

TA贡献1845条经验 获得超8个赞

所以,我刚刚测试了Stretch,它工作正常。在这种情况下,该问题与Debian 8 Jessie的操作系统有关,它无法处理比 3.4.20 更高版本的 glibcxxx。

PSStretchDebian 9的发行版名称


查看完整回答
反对 回复 2021-11-23
  • 3 回答
  • 0 关注
  • 303 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信