ER_m_text m_text_start m_text_size { ; load address = execution address
* (InRoot$$Sections)
.ANY (+RO)
}
这是主程序执行区设置,放在了外部Flash,这样编译是正确的,现在我想把主程序的执行区改到外部SDRAM
就是这样
ER_m_text m_text_data_start m_text_size { ; load address = execution address
* (InRoot$$Sections)
.ANY (+RO)
}
这样编译不通过
linking...
.\Objects\text.axf: Error: L6202E: entry.o(.ARM.Collect$$$$00000000) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry4.o(.ARM.Collect$$$$00000003) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry5.o(.ARM.Collect$$$$00000004) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry7b.o(.ARM.Collect$$$$00000008) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry8b.o(.ARM.Collect$$$$0000000A) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry9a.o(.ARM.Collect$$$$0000000B) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry12b.o(.ARM.Collect$$$$0000000E) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry10a.o(.ARM.Collect$$$$0000000F) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry11a.o(.ARM.Collect$$$$00000011) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: entry4.o(.ARM.Collect$$$$00002714) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: init.o(.text) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: handlers.o(i.__scatterload_copy) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: handlers.o(i.__scatterload_null) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: handlers.o(i.__scatterload_zeroinit) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6202E: anon$$obj.o(Region$$Table) cannot be assigned to non-root region 'ER_m_text'
.\Objects\text.axf: Error: L6203E: Entry point (0x80002401) lies within non-root region ER_m_text.
Finished: 0 information, 0 warning and 16 error messages.
".\Objects\text.axf" - 16 Error(s), 0 Warning(s).
最后发现执行区的地址只能是m_text_start,其他地址都报错,不知道怎么搞了