Ответ 1
Только для записи я отвечу на свой вопрос.
TL; DR: поддерживается расширение типов фиксированных точек для архитектуры ARM Cortex-M/R во встроенной ветки gcc (версия 4.6 и более поздняя). Инструментальная цепочка на основе этой ветки gcc находится здесь.
Длинный ответ:
На момент написания, summon-arm-toolchain загружается по умолчанию linaro-gcc-4.5-2011.02 (или, альтернативно, gcc-4.5.2). Он не включил по умолчанию расширение типов фиксированной точки. Я попытался добавить параметр --enable-fixed-point
в configure
, но я получил ошибку компиляции, описанную в этом bug. Я попытался использовать более позднюю версию (linaro-) gcc, но в вызове-toolchain проблемы возникла проблема с применением собственного gcc-исправления для этой более новой версии. Я также попытался использовать ветвь dev этой инструментальной цепочки (которая использует linaro-gcc-4.6-2011.10) без успеха. Похоже, на данный момент расширение ARC Cortex-M/R не поддерживается линией-gcc, а также основной ветвью gcc.
Затем я попробовал gcc-arm-embedded toolchain, который основан на встроенной ветки gcc. Я смог скомпилировать выборочную программу типов фиксированной точки без проблем, для целей ARM Cortex-M3 и Cortex-M4. Поддержка этого расширения для Cortex-M/R была добавлена в конце 2011 года, как можно увидеть на этот поток.