首页 > 解决方案 > 如何强制 gnu ld 使用 -lc 中的符号覆盖我自己的 libc 副本中的符号?

问题描述

我正在将 uClibc 移植到 rtos,它的 bsp 目标之一是能够在 posix 之上运行。不幸的是,这意味着在为 posix 目标编译时,如果我将所有内容作为一个二进制可执行文件链接在一起,则会在 uClibc 和 Linux 系统 C 库之间出现重复符号错误。

我想找到一个解决这个问题的方法,它可以让我不必破解 uClibc 源代码,同时还能让我顺利地保持为 posix 模拟器和嵌入式可重定位图像目标编译的能力。如果需要,是否可以使用某种类型的链接器技巧在编译时使用等效的 glibc 符号覆盖 uClibc 符号?

标签: clinkerlibc

解决方案


推荐阅读