【问题标题】:How to link multiple assembler files for MMIX如何为 MMIX 链接多个汇编文件
【发布时间】:2011-02-15 21:25:24
【问题描述】:

假设,我写了一个小库来实现一些“fprint”——可能。教我 MMIX 的书(Das MMIX-Buch,德语)总是将整个库复制到新程序中,但我不喜欢这种方法。有没有办法将库组装成一个目标文件,将主程序组装成另一个并将这两个链接在一起?如何做到这一点?

【问题讨论】:

    标签: assembly static-linking object-files mmix


    【解决方案1】:

    查看 mmix 存储库 www.mmix.cs.hm.edu,examples 文件夹中有两个示例:Hello World GNU,逐步描述如何获取和使用 GNU 工具以及编译和链接 hello.s(汇编程序) 或 hello.c 与 C 库和第二个示例链接,在 MMIX 上运行 MMIX,它将来自不同 c 文件的 MMIX 的 MMIX 可执行文件链接在一起,并将几个汇编文件和 C 库链接在一起以实现 MMIX 的 fat32 文件系统. 马丁

    【讨论】:

      【解决方案2】:

      根据我从互联网上的简短搜索了解到,mmix 工具使用普通的 gcc 和 binutils 包。因此,我希望多个目标文件甚至标准静态库都能“正常工作”。我想知道你到底遇到了什么问题。

      gcc -c lib.c -o lib.o
      gcc -c main.c -o main.o
      gcc lib.o main.o -o program
      

      编辑:显然与 asm 源类似,只需使用 .s 或 .S 扩展名。当然,您也可以使用 gcc 在幕后使用的适当的汇编器和链接器命令。命令行选项 -v 将显示这些。

      【讨论】:

      • 我最初的问题是,我必须注意手动执行此操作。
      猜你喜欢
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-31
      相关资源
      最近更新 更多