gpt4 book ai didi

内存映射的 gcc 链接文件,那是什么语法?

转载 作者:行者123 更新时间:2023-12-02 00:32:40 24 4
gpt4 key购买 nike

当使用 gcc 为 MCU 进行交叉编译时,您向链接器提供链接器脚本文件,以便它知道如何创建最终目标文件。

我想了解有关此类文件的更多信息,但找不到有关这些文件如何工作、它们使用何种语法、最佳实践是什么以及应避免什么的好教程。

这是一个精简链接文件的示例,该文件将通过“-Tlinkfile.ld”选项提供给链接器:

MEMORY
{
ram (rwx) : ORIGIN = 0x20000000, LENGTH = 20k
rom (rx) : ORIGIN = 0x00000000, LENGTH = 128K
}
SECTIONS
{
. = 0x0; /* From 0x00000000 */
.text :
{
*(.nvic_vector) /* Vector table */
*(.text.*) /* Program code */
*(.text) /* Program code */
*(.rodata) /* Read only data */
} >rom

. = 0x20000000; /* From 0x20000000 */
.data :
{
*(.data) /* Data memory */
} >ram AT > rom

.bss :
{
*(.bss) /* Zero-filled run time allocate data memory */
} >ram AT > rom
}

/谢谢

最佳答案

语法记录在 GNU binutils ld documentation 中- 这与其说是教程,不如说是引用,但其中散布着各种示例。

关于内存映射的 gcc 链接文件,那是什么语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6087966/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com