gcc - arm-none-eabi-gcc : error: unrecognized command line option '--cref' ; did you mean '--xref' ?

标签 gcc linker

我正在为 STM32 使用 arm-none-eabi-gcc 我试图通过将选项“--cref”传递给链接器来生成交叉引用表,但我收到此错误

arm-none-eabi-gcc: error: unrecognized command line option '--cref'; did you mean '--xref'?

“--xref”是“--cref”的替代品吗?

最佳答案

--crefGNU binutils linker 的一个选项, ld, 但它不是 gcc 的选项

您可以指示 gccld 调用链接器时通过使用 the gcc选项-Wl,其用法:

-Wl,<ld-option>[,<ld-option>...]

因此,在 gcc 命令行中传递 -Wl,--cref 而不是 --cref

就其本身而言,这将使链接器在标准输出上打印交叉引用表。如果你 宁愿把它放在一个映射文件中,然后也从链接器和交叉引用请求一个映射文件 表将附加到它:-Wl,--cref,-Map=mapfile

(--xref 很久以前是 gcc 的一个选项。它不再是一个选项,而是命令行 解析器仍然会建议它作为你在解析未知时的意思 选项。)

关于gcc - arm-none-eabi-gcc : error: unrecognized command line option '--cref' ; did you mean '--xref' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61524325/

相关文章:

c - 最佳 Windows C 工具堆栈

linker - CUDA:头文件中使用的 __device__ 函数上的 LNK2005 错误

c - 如何在保持动态加载的同时静态链接libc?

c++ - 链接器设置

c - 具有两个 double 的结构的对齐方式为 4,即使 double 对齐为 8(32 位)

c - 为什么 RAND_MAX 在 linux 和 windows 的同一台机器上不同?

gcc - 使用链接器映射内存

c - gtk3更改按钮背景颜色

c++ - 链接到库需要 MFC80U.LIB

c++ - 为什么我们需要在 Windows C++ 中链接 kernel32.dll、user32.dll 等...?