自从我树莓派的python升级到3.9,每次import numpy都会报错:libm.so.6: version 'GLIBC_2.29' not found。这又是怎么回事呢?查了资料才知道,原来是我的respbian系统版本低的原因(如图)。

(可以用lsb_release -a 查看respbian版本)

无法import numpy,在自制智能语音助手过程就会遇到很多不便,虽然从唤醒、TTS和ASR我都选择了不需要numpy的折中方案,但是在安装聊天机器人的时候,我选择的两个方案最终都要import numpy,于是只能咬咬牙想办法解决这个报错。

功夫不负有心人,在CSDN上找到一篇《ubuntu下安装glibc 2.28(报错及解决办法)》,这篇文章介绍的是升级glibc2.28,我尝试着用他介绍的方法升级glibc2.29。具体操作如下:

1.下载

wget https://ftp.gnu.org/gnu/glibc/glibc-2.29.tar.xz 

(glibc各个版本下载地址:https://ftp.gnu.org/gnu/glibc/

2.解压

xz -d glibc-2.29.tar.xz

tar -xvf glibc-2.29.tar

3.创建build文件夹并检查配置

cd glibc-2.29

mkdir build

cd build

../configure --prefix=/opt/glibc-2.29

(若检查过程中途退出,可以根据提示安装缺失的程序,然后再重新执行)

4.编译和安装

make

sudo make install

5. 添加环境变量

sudo nano ~/.bashrc

在文件末尾添加:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/glibc-2.29/lib

存档后更新bashrc文件:

source ~/.bashrc

6. 验证

在终端输入:python后,再import numpy,如果没有报错,就代表成功。(如图)

更多推荐