gpt4 book ai didi

compilation - 关于链接描述文件创建和验证的建议

转载 作者:行者123 更新时间:2023-12-04 02:55:08 25 4
gpt4 key购买 nike

长话短说。我希望学习如何创建一个好的链接器脚本,以便我应该更改平台/架构/供应商,我不会再次陷入零基础不知道该怎么做。我不关心任务的难度,而是理解它。

我已经开始了一种 project ,可以说是创建一个基础或骨架,用于在 STM 的 32 位 Cortex-M3 芯片上进行编程和开发。在 jsiei97 的帮助下从 STM32F103RB(我也有一个 TI Stellaris LM3S828,但这是另一个问题)开始,不需要获得许可的 IDE。因为我是学生,大多数学生买不起这样的东西。

我知道有 ODev 和 Eclipse 插件等等,并且已经阅读了各种博客、维基、文档/手册页和大多数项目为您提供了一个链接器脚本,几乎不知道为什么和在哪里定义了东西。

我已经为 STM32 编译了一个 arm-none-eabi 工具链,但我挂断的地方是在链接器脚本中。 CodeSourcery 也需要一个。在阅读了 gnu 手册页后,我对如何创建它们及其语法有了一个基本的概念,但是除了明显的 .text、.bss 和 .data 之外,我根本不知道从哪里开始放入各种额外的部分.

我创建了一个 rudimentary version但我收到链接错误,要求部分定义,这就是我卡住的地方。我知道如何定义它们,但知道我在做什么甚至接近正确是问题所在。

最佳答案

我有一个简单的链接器脚本,我经常跨平台重用,只需根据需要更改一些地址。

http://github.com/dwelch67/

有许多带有 gcc 示例的示例,其中大多数都有链接器脚本。

MEMORY
{
rom : ORIGIN = 0x00000000, LENGTH = 0x40000
ram : ORIGIN = 0x10000000, LENGTH = 30K
}

SECTIONS
{
.text : { *(.text*) } > rom
.bss : { *(.bss*) } > ram
}

关于compilation - 关于链接描述文件创建和验证的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8963642/

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