在进行嵌入是开发的时候,如果碰到 应用程序报告以下错误,
那么说明,你的嵌入式的系统 LIBC库版本过低。
这时候该怎么解决呢?
我再进行live555 开发的过程中就碰到了。
这时候,你可能需要选择比较低版本的交叉编译器,或者要选择低版本的开源库。
但是除了以上方法之外,没有其他办法呢?比如更新ARM 上的LIBC库呢?
答案是肯定的。
在PC上如果想要更新LIBC库,很简单,网上一搜一大堆。这里就简单介绍一下:
一 PC上更新LINUX LIBC库
- 查看LIBC库支持的版本
strings /lib64/libc.so.6 |grep GLIBC2
-
到 http://www.gnu.org/software/libc/libc.html 或 Index of /pub/gnu/libc下载你要的LIBC库。注意LIBC库不是越新越好。
-
编译
tar xvf glibc-2.26.tar.gz
cd glibc-2.26
mkdir build
cd build
…/configure --prefix=/usr/local/glibc-2.26 // 配置glibc并设置当前glibc-2.26安装目录
make -j4
make install
cp /usr/local/glibc-2.26/lib/libc-2.26.so /lib64/libc-2.26.so
mv /lib64/libc.so.6 /lib64/libc.so.6.bak
LD_PRELOAD=/lib64/libc-2.26.so ln -s /lib64/libc-2.26.so /li