目录
背景
一个常见的问题就是:

拿到客户的开发板后需要验证自己本地搭建的交叉编译环境是否正确,这影响到后续的开发.
glibc就是指libc.so.6这个动态库,libc.so.6软链接到实际的动态库.
开始动手!
在开发板上,如果有例子比如说可执行程序.那么可以通过
nm sample_adc | grep GLIBC_ : sample_adc(作为可执行程序) 查看那些调用是用到glibc 库的
通过
strings /lib/x86_64-linux-gnu/libc.so.6 |grep GLIBC_ 查看glibc 的所有版本,如果是开发板注意库的路径.
查看开发板和本地linux所支持的最高版本,目前我的工作证明链接低版本的glibc的bin可以在高版本上运行,高版本编译的bin不能在低版本的glib的环境中运行。
网上看了很多种方式,总结下来有这么几种:
个人推荐用第三种,既不影响本地的glibc,又能完成目标.
第一种
参考

本文介绍了在验证跨平台开发环境时,如何适配glibc版本的问题,重点讲述了三种方法:降低本地glibc版本、指定动态库路径、使用patchelf修改二进制。作者推荐使用patchelf,因为它对原程序影响最小。
最低0.47元/天 解锁文章
3475






