我正在为 STM32 使用 arm-none-eabi-gcc 我试图通过将选项“--cref”传递给链接器来生成交叉引用表,但我收到此错误
arm-none-eabi-gcc: error: unrecognized command line option '--cref'; did you mean '--xref'?
“--xref”是“--cref”的替代品吗?
最佳答案
--cref
是 GNU binutils linker 的一个选项, ld
, 但它不是 gcc
的选项
您可以指示 gcc
在 ld
调用链接器时通过使用 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/