|
#10010 errors encountered during linking
#10264 IRAM memory range overlaps existing
-----------------------------------------------------------------------------------------------------
这种错误出现时, 首先检查工程中是否有两个 CMD 文件?
如果有, 一般都是一个用于配置成烧入RAM, 另一个是 Flash. 或者一个是 Debug, 另一个是 Release.
这时你就该看看, 两个是否是同时被连接器调用了, 也就是连接一次用了两次连接文件. 结果肯定是存储器空间不够用或者重叠(Overlapping)错误.
例如: 你要编译连接后的代码是烧入Flash中的, 这是如果这时你把 RAM 的配置 CMD 文件也包含进去了. 就会报错.
同理 Debug 和 Release 版本也会出现这个问题.
解决办法: 如果你要编译链接, 然后将 .out 烧入到 RAM 内, 那么就要在工程中找到 Flash 的配置 CMD 文件, 然后右键--->Resource Configuration---> Exclude from Build, 然后根据需要选中对应的要排除版本.
Debug 和 Release 版本的问题解决方法类似. 也就是如果你要产生 Debug 版本, 那就把 Release 版本的 cmd 文件从Debug版本中排除掉(Exclude).