CENTOS 6下ANDROID SDK碰到提示”LIBC.SO.6: VERSION `GLIBC_2.14′ NOT FOUND”的解决方法

时间:2022-08-25 15:29:08

在CentOS 6的机器上安装了Android的开发环境,碰到如下一些问题和解决方法
1. Android Studio 添加Android SDK时,提示缺少JDK 1.5、JDK 1.6 或 JDK 1.7, 但是机器上已经安装好JDK 1.6, JDK 1.7,还是提示同样的问题
解决方法,软件的提示信息Bug,其实是缺少 JDK 1.8(这个提示Bug应该会在后续版本被修订), 下载安装JDK 1.8,添加JDK 1.8后,再添加Android SDK,一切正常。

2. 新建一个简单Android项目,编译,提示”libc.so.6: version `GLIBC_2.14′ not found” 的错误信息
下载使用的是Android SDK Ver 25.2.5 Platform Tools Ver 25.0.3 Build Tools Ver 25.0.2
google搜索,确认是libc库的版本低的原因,CentOS 的libc版本文v2.14 要CentOS 7 才有支持 GLiBC_2.14,
解决方法要么重装系统使用CentOS 7, 要么逐个试验降低SDK版本,直到可以不要GLIBC_2.14的可用SDK版本。
既不想重装系统到CentOS7, 也不想逐个往下试验低版本SDK,

搜索网络后找到一个解决方法,也就是在其他目录编译安装一个并行的glibc 2.14版本,然后使用LD_LIBRARY_PATH临时指定到这个新安装的libc目录


wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz
tar zxvf glibc-2.14.tar.gz
cd glibc-2.14
mkdir build
cd build
../configure –prefix=/opt/glibc-2.14
make -j4
sudo make install
export LD_LIBRARY_PATH=/opt/glibc-2.14/lib

在同一个终端下执行原本会出现 libc.so.6: version `GLIBC_2.14′ not found 提示的 aapt 命令,结果正常运行
至此,以为大功告成了,同一终端下,执行build命令,卡主不动

继续尝试解决方案,
将原本aapt改名aapt_, 新建一个同名的aapt,写入如下bash脚本

#!/bin/sh
export LD_LIBRARY_PATH=/opt/glibc-2.14/lib && "$0"_ $@

添加执行权限,在命令行下试了一下可以正常执行,将其他几个命令做同样处理
新建一个终端窗口,打开IDE,正常,新建一个Android项目,编译正常,
到此,大功告成,在没有更换操作系统和降低Android SDK版本的情况可以进行Android开发了