IAR模糊部分匹配失败错误(Lc037)

时间:2014-09-09 11:24:33

标签: linker arm iar

我想在ICF文件中创建几个Flash区域,但是我遇到了一些麻烦 请参阅以下链接:http://paste.ideaslabs.com/show/bTjeqs7Ymy

我正在尝试将闪存拆分到不同的块:启动码/参数/用户代码/放电区域,我收到错误:

Error[Lc037]: ambiguous section match: "ro data section .rodata in usbiap_vars.o" matches more than one pattern

"ro" (at line 71 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf")  
"ro" (at line 73 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf") 

Error[Lc037]: ambiguous section match: "ro data section .data_init in system_mb9abxxx.o" matches more than one pattern 
"ro" (at line 71 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf")  
"ro" (at line 73 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf") 

Error[Lc037]: ambiguous section match: "ro code section .text in abort.o(dl7M_tln.a)" matches more than one pattern 
"ro" (at line 71 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf")  
"ro" (at line 73 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf") 

Error[Lc037]: ambiguous section match: "ro code section .text in abort.o(dl7M_tln.a)" matches more than one pattern 
"ro" (at line 71 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf")  
"ro" (at line 73 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf") 

Error[Lc037]: ambiguous section match: "ro code section .text in startup_mb9xfxxx.o" matches more than one pattern 
"ro" (at line 71 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf")  
"ro" (at line 73 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf") 

Error[Lc037]: ambiguous section match: "ro code section .text in fpinit_M.o(m7M_tlv.a)" matches more than one pattern 
"ro" (at line 71 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf")  
"ro" (at line 73 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf") 

Error[Lc037]: ambiguous section match: "ro code section .text in cmain.o(rt7M_tl.a)" matches more than one pattern 
"ro" (at line 71 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf")  
"ro" (at line 73 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf") 

Error[Lc037]: ambiguous section match: "ro code section .text in cexit.o(rt7M_tl.a)" matches more than one pattern          
"ro" (at line 71 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf")  
"ro" (at line 73 of "D:\Data\Fujitsu\Workspace\porting\bootcode2\config\mb9bf568.icf") 

.... many Errors.                                                                          

The line 71 :place in BOOTCODE_region { readonly, block FIXED_ORDER_ROM };
The line 73 :place in PARAMS_region { readonly };

我是新手,如果有任何建议,我将不胜感激! 感谢。

1 个答案:

答案 0 :(得分:0)

我的建议(可能不完全正确 - (我也是新人,但这是解决我问题的原因):

第71行:放置在BOOTCODE_region {block FIXED_ORDER_ROM};

第73行:位于PARAMS_region {readonly};

在我的实例中,它不喜欢readonly在多个地区。这意味着您希望PARAMS_region中的只读代码和具有该块的其他区域仅限于该块。我不知道是否还有另一种解决方法。