如何从Linux共享库的符号依赖表中剥离符号版本信息?

519

我需要一种从Linux共享库的符号依赖关系表中剥离(或更改,如果无法剥离的话)符号版本信息的方法,这样我就可以解决memcpy@GLIBC_2.14灾难,从而使我的二进制文件可以在Linuxes上使用glibc再次超过2.14。

有什么工具吗?

注:__asm__('.symver')指令不为我工作,因为这个问题是不是我的库使用memcpy的,但我的图书馆使用的东西从libgcc中和用途memcpy@GLIBC_2.14,这就是为什么我需要一个工具来更改,之后编译。谢谢。

受雇于俄罗斯

我需要一种从Linux共享库的符号依赖表中删除(或更改,如果无法删除的话)符号版本信息的方法,这样我就可以解决memcpy@GLIBC_2.14灾难,

剥离符号版本信息

  • 不重建链接二进制文件内部的许多内部ELF结构是不可能的(即在实践中是不可能的),并且
  • (即使您成功了),也不会产生可在较旧的GLIBC上运行的二进制文件。

因此,我可以使我的二进制文件再次在版本高于2.14的glibc的Linux上运行。

您可以在此处找到“在较新的系统上构建,在较旧的系统上运行”的方法

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何符号化已剥离共享库的堆栈跟踪

如何从共享库中删除符号?

add_qt_android_apk剥离共享库的调试符号

剥离linux共享库

如何使dlopen加载的共享库中的gdb打印符号?

如何控制从 Bazel 中的共享库导出哪些符号?

使用共享库未定义符号的Linux共享库

如何从共享库获取版本信息到Android清单中?

ctype 加载的共享库符号也在 glibc 中定义;如何选择符号?

从静态库中剥离不需要的符号

跟踪共享库中符号的来源

为什么要将全局偏移表用于共享库本身中定义的符号?

如何在Linux中对共享库进行版本控制?

提供库的地址时,如何获取共享库中符号的地址?

如何使Radare2将符号表信息用于库调用?

编译器会从产品二进制文件中的依赖静态库中剥离不相关的拱形符号吗?

共享库符号冲突和静态链接(在Linux上)

我如何使用find,nm和grep在许多共享库中查找符号?

在 PySpark RDD 中查找和剥离符号

来自静态库的共享库依赖导致未定义符号错误

如何知道给定的共享库是否使用调试符号构建?

如何检测是否需要共享库符号链接?

如何检查LLDB是否从共享库中加载了调试符号?

共享so库中的nm符号输出t vs T

Fortran共享库中的符号命名是intel还是gcc?

在共享库中隐藏符号是否有技术原因?

Cython:共享库中未定义的符号

无法解析符号,但依赖项在本地存储库中

从静态库中剥离/删除调试符号和归档名称