gpt4 book ai didi

c - 如何在 ARM Cortex-M 上使用 GCC 定点类型扩展?

转载 作者:太空狗 更新时间:2023-10-29 16:40:49 27 4
gpt4 key购买 nike

我正在使用 ARM Cortex-M3 和 Cortex-M4。我想使用 GCC 的 fixed-point type extension .我正在使用 summon-arm-toolchain。下面一行代码

_Fract f = 0.1;

抛出以下编译错误:

error: fixed-point types not supported for this target

GCC 是否真的不支持 Cortex-M3/M4 的定点类型,还是我遗漏了什么?

最佳答案

仅作记录,我将回答我自己的问题。

TL;DR:gcc(4.6 版及更高版本)的嵌入式 分支中的 ARM Cortex-M/R 架构支持定点类型扩展。找到基于该 gcc 分支的工具链 here .

长答案:

在撰写本文时,summon-arm-toolchain默认下载 linaro-gcc-4.5-2011.02(或 gcc-4.5.2)。默认情况下,它没有启用定点类型扩展。我尝试将参数 --enable-fixed-point 添加到 configure,但我得到了此 bug 描述的编译错误.我尝试使用更新版本的 (linaro-)gcc,但是 summon-arm-toolchain 在将其自己提供的 gcc 补丁应用到这个更新版本时遇到了问题。我还尝试使用此工具链的 dev 分支(使用 linaro-gcc-4.6-2011.10)但没有成功。看起来,在这一点上,无论是 linaro-gcc 还是 gcc 的 main 分支都不支持 ARM Cortex-M/R 的定点扩展。

然后我尝试了 gcc-arm-embedded toolchain ,它基于 gcc 的 embedded 分支。我能够毫无问题地为目标 ARM Cortex-M3 和 Cortex-M4 编译我的定点类型示例程序。 2011 年底添加了对该 Cortex-M/R 扩展的支持,如在 this thread 上所见。 .

关于c - 如何在 ARM Cortex-M 上使用 GCC 定点类型扩展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11005162/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com