还有另一个类似命名的问题,但它从未得到解决。
我在Ubuntu上安装了GNU Arm Embedded PPA中的arm-none-eabi
gcc和binutils。这个工具链通常可以正常工作。
今天,在我的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
答案 0 :(得分:0)
似乎与gcc
而不是ld
相关联可以解决问题。我甚至可以传递链接器脚本,而不必使用-Wl,-T
。
我仍然知道为什么ld
首先没有工作。