ARM分散文件符号未定义?

时间:2017-07-02 21:41:47

标签: compiler-errors arm makefile-errors

在我的分散文件中,我有一个名为TCM_COPY的内存区域,

在我的C文件中,我试图将region_name作为extern,

extern unsigned int Image $$ TCM_COPY $$ Base。

但是当我编译该C文件时,ARM编译器会生成错误;

L6218E:未定义的符号Image $$ TCM_COPY $$ Base。

我很奇怪为什么我无法从我的分散文件中导入该区域符号?

1 个答案:

答案 0 :(得分:0)

您可以通过分散文件吗?

我尝试在http://www.keil.com/support/docs/3629.htm之后使用空缓冲区定义一个新的执行区:

在我的分散文件中:

LR_IROM_TEST 0x0802F000 0x00000100  {
  BUFFER 0x0802F000  EMPTY 0x10 {}
}

在我的c档案中:

extern unsigned int Image$$BUFFER$$Base;

可以使用BUFFER访问您的区域(如果大小缓冲区=大小LR_IROM_TEST)。 它对我有用。

此链接可能会有所帮助: http://www.keil.com/support/man/docs/armlink/armlink_pge1362065956104.htm