arm-none-eabi-ld无法找到-mcpu = cortex-m3
问题描述:
还有一个类似命名的问题,但它从未解决。arm-none-eabi-ld无法找到-mcpu = cortex-m3
我安装了arm-none-eabi
gcc和binutils来自Ubuntu上的GNU Arm Embedded PPA。这个工具链通常工作正常。
今天,在我的Makefile中,我将-march=armv7-m -mcpu=cortex-m3
作为一些选项链接在一起。这会立即导致ld失败,如下所示:
$ arm-none-eabi-ld -mcpu=cortex-m3 -march=armv7-m -Tcm3.ld # and some more options
arm-none-eabi-ld: unrecognised emulation mode: arch=armv7-m
Supported emulations: armelf
我做了什么错?我似乎无法找到关于此的任何信息!
我也用我的其他工具链(CodeSourcery,2011年3月)测试了这个。该工具链通常可以正常工作,但现在也失败了。
我应该链接gcc
而不是ld
?
答
看来,与gcc
而不是ld
链接解决了这个问题。我甚至可以传入链接描述文件而无需使用-Wl,-T
。
我仍然开放,为什么ld
不起作用。