在arm-linux交叉编译工具链的制作(基于S3C2440)一文中制作好的交叉编译工具链,在Red Hat中执行时报错:/lib64/libc.so.6: version `GLIBC_2.14' not found
本文使用的Red Hat系统的信息如下图所示
出现这个错误的原因是:Red Hat系统的glibc版本太低,而arm-linux交叉编译工具链的制作(基于S3C2440)一文中编译arm-linux交叉编译工具链时使用了较高版本的glibc
1、查看系统glibc支持的版本
2、查看系统已安装的glibc
所以,考虑编译一个glibc来解决这个问题,本文使用的是glibc-2.14.tar.xz这个版本。
1、下载glibc-2.14.tar.xz
Shell代码
- $ wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.xz
2、解压
Shell代码
- $ tar xvJf glibc-2.14.tar.xz
3、在glibc源码目录建立build目录,并进入build目录
Shell代码
- $ cd glibc-2.14
- $ mkdir build
- $ cd build/
4、配置、编译并安装
Shell代码
- $ ../configure --prefix=/opt/glibc-2.14
- $ make -j4
- $ make install
5、配置环境变量
Shell代码
- $ vim ~/.bashrc
在最后添加以下两句
Shell代码
- LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
- export LD_LIBRARY_PATH
最后,验证问题是否解决。