自从我树莓派的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,如果没有报错,就代表成功。(如图)