,使用#0参数是使用mov,不是ldr
解决:改为mov r0,#0
start.o(.text+0xc8): In function `SDRAM_CONFIG': : undefined reference...pc,=lr ,编译器误解lr是一个变量,这里应该写成mov pc,lr(完成一个子程序返回)
12: error: syntax error before "int"
错误:'int'符号之前有语法错误...解决:
1.lds链接脚本中每个符号(:或者=)左右都要加上空格 , 或TAB按键 ,不然就会出错,例如以下代码:
. = ALIGN(4);
.rodata:{*(.rodata...rodata*)}; //这里"}"后面加了";"逗号,将出错
3.lds脚本sections中若是以当前地址.等于xxx时,.后面都要加空格,例如以下代码:
.= 0x33f80000; /.../当前0地址里赋入0X33f80000,这里.后面没有加空格,将出错,改为
. = 0x33f80000;
. = ALIGN(4);
4.lds脚本中定义符号时,都要使符号在前,