首页 > 解决方案 > rust-lld 重定位 R_X86_64_32S 超出范围

问题描述

我正在尝试将一些代码链接到 0xffff800000000000 但我收到错误“重定位 R_X86_64_32S 超出范围”。我正在链接 64 位代码并使用“-C relocation-model=large -C code-model=static”。我还使用自定义链接器脚本。请告诉我如何解决此错误。

链接器脚本:

SECTIONS
{
    . = 0xffff800000000000;
    .text : { *(.text) }
    .data : { *(.data) }
    .rodata : { *(.rodata) }
    .bss (NOLOAD) : { *(.bss) *(COMMON) }

    /DISCARD/ : { *(.eh_frame) *(.comment) }
}

标签: rustlinkerstatic-linking

解决方案


推荐阅读