GNU ld 链接器标志,用于查看静态库中的链接对象

GNU ld linker flag to see linked objects from a static library

我正在使用 CMake 为使用 GNU 工具链的 Renesas 处理器构建一个 executable 二进制文件。我从对象更改为静态库,并且中断 table 被正确链接时遇到问题。感谢 Whosebug 我发现了 --whole-archive 选项。

我的问题是,是否有链接器标志或方式向我显示从库链接的对象,以便我知道链接器忽略了哪些对象(因此这些对象将是没有未解析符号的对象)?

ld 可以创建一个映射文件,显示链接了哪些对象以及链接的原因(即哪个对象请求解析符号):

gcc -Wl,-Map -Wl,mapfile ...