gpt4 book ai didi

c - GCC m68k pc-相对

转载 作者:太空宇宙 更新时间:2023-11-04 03:47:46 26 4
gpt4 key购买 nike

我使用 Microtek 工具链生成可执行二进制文件,其中包含可重定位代码(相对于 pc)和来自固定地址的数据(绝对数据)。目前,此工具链不适用于 Windows 7 64 位。这个想法是用 GNU 工具链 (GCC 4.8.0) 替换 68000 的 Microtek 工具链。

但我在 gcc 编译器上找不到相同的选项:

Microtec 编译器“MCC68K”具有:“-Mcp”:指示编译器对所有代码引用使用 PC 相对寻址。“-Mda”:指示编译器对所有数据引用使用绝对寻址。

Gcc (m68k-elf-gcc) 与:-mpcrel

无法像 Microteck 编译器那样使用没有可重定位数据的 gcc 可重定位代码构建。使用“-mpcrel”,一切都是可重定位的(代码和数据)。

你有什么想法吗?

抱歉我的英语不好。

谢谢。

最佳答案

据我所知,使用 GNU m68k 工具链无法获得相同的结果。

  • -mpcrel 将生成完全与位置无关的代码代码和数据的 pc 相对寻址,导致有限的程序/数据大小(相对于 pc 的偏移量不能超过 16 位)。
  • -fpic-fPIC 将生成与位置无关的代码可重定位的二进制文件,但需要一个特殊的加载程序来执行就地重定位

关于c - GCC m68k pc-相对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23011162/

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