GCC自定义截面长度定义,超出范围控制

时间:2016-12-09 02:16:08

标签: gcc linker avr-gcc

我正在使用GCC和特定的MCU目标(准确的AVR)我有一个特殊的外部存储器,我尝试通过在链接器选项中使用以下命令来定义自定义部分

-Wl,--section-start=.customsection=0x821000

然后在代码中使用属性,就像这样:

unsigned char X __attribute__((section (".customsection")));

一切都正确,工作正常。但是,我如何定义这个自定义部分的限制,强制GCC链接器在溢出的情况下引发错误?限制我的意思是一种定义部分或结束地址长度的方法。

1 个答案:

答案 0 :(得分:1)

AFAIK,您只能在链接器文件中指定长度。

您将必须为MCU复制链接器文件并对其进行修改。

有关更多信息和示例,请参见:
-https://www.avrfreaks.net/forum/create-new-section-ram
-https://www.avrfreaks.net/forum/custom-linker-script-atmega