盐汽水霉 2023-02-23 19:47 采纳率: 100%
浏览 101
已结题

iar报错:Error[e16]: Segment XDATA_I (size: 0x6e4 align: 0) is too long

iar make报错,另外一个同样的工程文件没有报错,这一个报错
错误如下图
各位,有没有什么解决方法啊

img

bytes needed. The problem occurred while processing the segment placement command  
"-Z(XDATA)XDATA_Z,XDATA_I=_XDATA_START-_XDATA_END", where at the moment of placement  
the available memory ranges were "XDATA:1be7-1eff" 
   Reserved ranges relevant to this placement: 
   XDATA:1-300          XSTACK 
   XDATA:301-1eff       XDATA_Z 
   BIT:0-7              BREG 
   BIT:80-97            SFR_AN 
   BIT:a0-af            SFR_AN 
   BIT:b8-c7            SFR_AN 
   BIT:d8-df            SFR_AN 
Error while running Linker 
  • 写回答

1条回答 默认 最新

  • GPT_Pro 2023-02-23 20:04
    关注

    该回答内容部分引用GPT,GPT_Pro更好的解决问题
    这里出现的报错,可能是你在编译工程时,硬件资源分配不当导致的。根据上面的报错信息可以看到,错误是因为XDATA_I(大小为0x6e4)段太长导致的,而且另外一个工程文件同样的情况没有报错,说明可能是你在编译这个工程文件时出现了问题,也可能是因为工程文件中某些参数设置不当从而导致XDATA_I段太长而报错。

    针对这种情况,建议找出XDATA_I段中定义的部分内容,如数据、代码或者其它内容,然后分析这些内容是否有什么不合理之处。例如,如果是数据,可以检查这些数据是否有过大的值;如果是代码,可以看一下代码是否有重复的部分或者有多余的部分等。

    此外,建议也可以尝试修改硬件相关的设置,例如尝试将XDATA_I中使用的存储器大小修改为较小的值,或者重新分配其它存储器来减少XDATA_I中存储器使用量。

    最后,还可以对比另外一个工程文件和当前工程文件,看一下工程文件中哪些部分不一样,并尝试修改成另外一个工程文件的设置来看看是否能够解决问题。
    如果回答有帮助,望采纳。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月7日
  • 已采纳回答 2月27日
  • 创建了问题 2月23日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效