#section #cli-tool #memory #ld #build-system #script #gnu

app ld-memory-cli

通过命令行创建 .ld MEMORY 部分

4 个版本

0.2.8 2023年6月29日
0.2.7 2023年6月2日
0.2.6 2023年6月2日
0.2.5 2023年6月1日

#1772命令行实用工具

每月 30 次下载

Apache-2.0

19KB
347

关于

此 CLI 工具允许通过命令行创建 GNU ld 链接器脚本内存部分。

安装

cargo install ld-memory-cli

用法

ld-memory 应与您的构建系统集成。提供正确的参数后,它将输出一个可以用于 GNU ld 链接器脚本的部分。

示例

ld-memory --section rom:0x0:1024K

... 输出

_rom_start = 0x0;
_rom_length = 0x100000;

MEMORY
{
    rom : ORIGIN = 0x0, LENGTH = 0x100000
}

可以指定偏移量,它将添加到 ORIGIN 并从 LENGTH 中减去

❯ ld-memory --section rom:0x0:1024K:128
_rom_start = 0x80;
_rom_length = 0xFFF80;

MEMORY
{
    rom : ORIGIN = 0x80, LENGTH = 0xFFF80
}

空字段视为 "0"。允许简单的算术。

❯ ld-memory --section rom:0x0:1024K:128 --section empty:: --section other:0x0+128K:1K+7K
_rom_start = 0x80;
_rom_length = 0xFFF80;
_empty_start = 0x0;
_empty_length = 0x0;
_other_start = 0x20000;
_other_length = 0x2000;

MEMORY
{
    rom : ORIGIN = 0x80, LENGTH = 0xFFF80
    empty : ORIGIN = 0x0, LENGTH = 0x0
    other : ORIGIN = 0x20000, LENGTH = 0x2000
}

依赖关系

~0.8–1.4MB
~29K SLoC