我目前正在研究U-Boot
源代码树,因为我希望添加对特定ARM体系结构的支持,以便进行教育。
还研究了ARM的链接器脚本,但有一些我目前不理解的东西:
OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
来源:
GitHub:U-Boot:arch/arm/cpu/U-Boot-spl.lds
当在链接器脚本中定义了具有相同格式的多个输出格式时,这意味着什么?有人能解释一下吗?
Binutil手册页可在https://sourceware.org/binutils/docs/ld/Format-Commands.html
第一个参数是默认的输出格式,第二个参数用于用户明确要求使用-EB传递给ld的大端序,第三个参数用于使用-EL明确要求使用低端序。
如果所有参数都相同,则对OUTPUT_FORMAT使用单个参数应具有相同的效果。