PaddlePaddle / Paddle

PArallel Distributed Deep LEarning: Machine Learning Framework from Industrial Practice (『飞桨』核心框架,深度学习&机器学习高性能单机、分布式训练和跨平台部署)
http://www.paddlepaddle.org/
Apache License 2.0
22.32k stars 5.63k forks source link

libstdc++.so.6:version 'GLIBCXX_3.4.30‘ not found #56047

Closed johnyanccer closed 1 year ago

johnyanccer commented 1 year ago

bug描述 Describe the Bug

import paddle即报错/home/XXXXXX/anaconda3/bin/../lib/libstdc++.so.6: version 'GLIBCXX_3.4.30' not found (required by ..

环境: ubuntu 2204 cuda 12.0.1 cuDNN v8.9.1 nccl2.18.3 python3.11 系统GCC 11.2,12.3 Anaconda3-2023.07-2-Linux-x86_64, anaconda gcc 11.4 libssl1.1_1.1.1f-1ubuntu2.19_amd64.deb 已安装 python3 -m pip install paddlepaddle-gpu==2.5.1.post120 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html 安装的版本应该是paddlepaddle_gpu-2.5.1.post120-cp311-cp311-linux_x86_64.whl

https.../2.5.1/linux/linux-gpu-cuda12.0-cudnn8.9-mkl-gcc12.2-avx/paddlepaddle_gpu-2.5.1.post120-cp311-cp311-linux_x86_64.whl

始终import 即报错

后采取https://blog.csdn.net/bohrium/article/details/126546521给出的方案

找到包含GLIBCXX_3.4.30的libstdc++.so.6,位于/usr/lib/x86_64-linux-gnu/ 删除原链接,重新设置新软链接指向/usr/lib/x86_64-linux-gnu/libstdc++.so.6,能正常import paddle,并且utils.run_check()通过

其他补充信息 Additional Supplementary Information

No response

2742195759 commented 1 year ago

好的,所以这个问题是已经解决了是吗?只是需要手动处理 GLIBCXX_3.4.30 找不到的问题。我这里会反馈给对应方向的开发者关注一下这个问题。

2742195759 commented 1 year ago

这个问题应该是GCC版本问题,anaconda gcc 11.4 没有匹配到 gcc12.2 ,建议对齐 gcc 版本就可以了。

johnyanccer commented 1 year ago

anaconda最新版本GCC就只有11.4,强制升级命令不大奏效,国内的镜像也都不好用, paddle 2.5使用gcc12估计有不少人都会踩坑

2742195759 commented 1 year ago

好的,我会给编译的同学反馈这个问题的。感谢反馈!

Ligoml commented 1 year ago

需求描述:anaconda最新版本GCC支持只到11.4,paddle2.5使用gcc12.2会引发安装问题

但是我这边测试了一下,gcc9.4的环境都可以正常安装和使用paddle2.5,所以大概只是软链接丢失的原因?

xlg-go commented 1 year ago

anaconda最新版本GCC就只有11.4,强制升级命令不大奏效,国内的镜像也都不好用, paddle 2.5使用gcc12估计有不少人都会踩坑

正如作者所说,我也踩到坑了。亲测以下命令,有效:

conda install -c conda-forge gcc=12.2.0

caidou05 commented 1 year ago

这个坑是真的大,然而官方却一点不说明,体验极差

yangyuke001 commented 1 year ago

这个坑是真的大,然而官方却一点不说明,体验极差

我花了好几天来尝试解决这个问题,却始终未能搞定,到现在还未解决。。。

yangyuke001 commented 1 year ago

anaconda最新版本GCC就只有11.4,强制升级命令不大奏效,国内的镜像也都不好用, paddle 2.5使用gcc12估计有不少人都会踩坑

正如作者所说,我也踩到坑了。亲测以下命令,有效:

conda install -c conda-forge gcc=12.2.0

这个方法有用,我解决了问题,感谢

FunnyWii commented 11 months ago

https://blog.csdn.net/bohrium/article/details/126546521 这个方案有效是因为你系统里有6.0.30这个版本的库 然而我是6.0.28...

skywalk163 commented 8 months ago

问题解决了,就是用了conda install -c conda-forge gcc=12.2.0 。就是conda太慢了.... 话说到了今天2024.3.23日,还需要用这个方法解决啊。

TheHonestBob commented 7 months ago

问题解决了,就是用了conda install -c conda-forge gcc=12.2.0 。就是conda太慢了.... 话说到了今天2024.3.23日,还需要用这个方法解决啊。

paddle太垃圾了,前两年就是因为某个无敌bug解决了,放弃的,过了这么久了,安装一个paddle耗费我一上午时间,使用这个方法安装paddle没有问题,在这个环境下面,再安装fasttext,哦豁,GG,重新安装gcc吧

LikeGiver commented 4 months ago

换源下载方式 conda install -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge gcc=12.2.0

DoiiarX commented 4 months ago

靠。这都2024年了,怎么还有这个问题。晕死了。

magicleo commented 3 months ago

同样的问题。mark一下。

即使conda安装更新了gcc。还需要确认系统级别的软链/usr/lib/x86_64-linux-gnu/libstdc++.so.6 指向的是否为conda环境中的库。

chujun225 commented 2 months ago

https://blog.csdn.net/bohrium/article/details/126546521 这个方案有效是因为你系统里有6.0.30这个版本的库 然而我是6.0.28...

您好,请问如果系统没有6.0.30这个库,您是怎么解决的呢?

TTiannaiTT commented 2 months ago

目前来看,问题基本上都是存在版本库但是找不到,需要手动修改; 最优方法仍然是直接更新gcc(有概率直接解决问题):

conda install -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge gcc=12.2.0

若更新后问题仍然存在需要手动修改软连接指向(若正确版本存在,不存在则需要更新libstdc++;) 具体方法参考上述的链接;

但是我个人尝试之后,发现直接让conda管理也能直接解决问题:

conda install paddlepaddle -c paddle

更新:发现conda方法只适用于cpu版本,官方没有支持gpu的conda, 还是得按照上面的方法操作

chujun225 commented 2 months ago

谢谢您,太感谢了!我再试试😁

---- Replied Message ---- | From | Yukun @.> | | Date | 10/05/2024 01:53 | | To | PaddlePaddle/Paddle @.> | | Cc | chujun225 @.>, Comment @.> | | Subject | Re: [PaddlePaddle/Paddle] libstdc++.so.6:version 'GLIBCXX_3.4.30‘ not found (Issue #56047) |

目前来看,问题基本上都是存在版本库但是找不到,需要手动修改; 最优方法仍然是直接更新gcc(有概率直接解决问题): conda install -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge gcc=12.2.0 若更新后问题仍然存在需要手动修改软连接指向(若正确版本存在); 不存在则需要更新libstdc++; 但是我个人尝试之后,直接让conda管理也能直接解决问题:

conda install paddlepaddle -c paddle

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

lsx66 commented 1 month ago

import cv2 from paddleocr import PaddleOCR 加一下import cv2解决。 无语,为什么要加 import cv2 才可以,神奇的paddle框架

FunnyWii commented 1 month ago

https://blog.csdn.net/bohrium/article/details/126546521 这个方案有效是因为你系统里有6.0.30这个版本的库 然而我是6.0.28...

您好,请问如果系统没有6.0.30这个库,您是怎么解决的呢?

没解决,放弃paddle