共2条
1/1 1 跳转至页
iar,release iar 2.2 编译release版时出错,请教大虾们

问
Building configuration: gas - Release
Error[e16]: Segment DATA16_Z (size: 0xb9 align: 0x1) is too long for segment definition. At least 0x38 more bytes needed. The problem occurred while processing the
segment placement command "-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,HEAP+_HEAP_SIZE=0200-0280", where at the moment of placement the available memory
ranges were "CODE:200-280"
请问该怎么做,是不是有什么设置可以该,还是别的什么,谢谢! 答 1: 定义太长,超出范围(B9H=182>80H=128)。 答 2: 我定义了一个结构体最大了104bytes,没有再大的了,还有,"-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,HEAP+_HEAP_SIZE=0200-0300”是系统自定义的,如下:
//*****************************************************************
// The following segments are defined in this linker command file:
//
// Data read/write segments (RAM)
// ==============================
//
// segment address range usage
// ------- ------------- --------------------------
// DATA16_I 0200-0300 Initialized variables
// DATA16_Z 0200-0300 Zero initialized variables
// DATA16_N 0200-0300 Uninitialized variables
// CSTACK 0200-0300 Run-time stack/auto variables
// HEAP 0200-0300 The heap used by malloc and free in DLIB
请问张工,应该怎么处理?谢谢 答 3: 变量太多的缘故吧! 答 4: 对,对!!
Error[e16]: Segment DATA16_Z (size: 0xb9 align: 0x1) is too long for segment definition. At least 0x38 more bytes needed. The problem occurred while processing the
segment placement command "-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,HEAP+_HEAP_SIZE=0200-0280", where at the moment of placement the available memory
ranges were "CODE:200-280"
请问该怎么做,是不是有什么设置可以该,还是别的什么,谢谢! 答 1: 定义太长,超出范围(B9H=182>80H=128)。 答 2: 我定义了一个结构体最大了104bytes,没有再大的了,还有,"-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,HEAP+_HEAP_SIZE=0200-0300”是系统自定义的,如下:
//*****************************************************************
// The following segments are defined in this linker command file:
//
// Data read/write segments (RAM)
// ==============================
//
// segment address range usage
// ------- ------------- --------------------------
// DATA16_I 0200-0300 Initialized variables
// DATA16_Z 0200-0300 Zero initialized variables
// DATA16_N 0200-0300 Uninitialized variables
// CSTACK 0200-0300 Run-time stack/auto variables
// HEAP 0200-0300 The heap used by malloc and free in DLIB
请问张工,应该怎么处理?谢谢 答 3: 变量太多的缘故吧! 答 4: 对,对!!
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
嵌入式LinuxC语言程序调试和宏使用技巧被打赏50分 | |
让代码中包含最新的编译时间信息被打赏50分 | |
rtthread硬件加密--2crc加密分析被打赏10分 | |
【分享开发笔记,赚取电动螺丝刀】mcxa156使用低功耗定时器适配硬件RTC框架被打赏26分 | |
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 |