gpt4 book ai didi

c - 有没有办法使用 gcc 将 C 转换为 MIPS?

转载 作者:太空狗 更新时间:2023-10-29 16:34:51 24 4
gpt4 key购买 nike

我完成了一个类的 C 到 MIPS 的转换,我想对照程序集检查它。我听说有一种配置 gcc 的方法,它可以将 C 代码转换为 MIPS 架构而不是 x86 架构(我的计算机使用 Intel i5 处理器)并打印输出。

在 Ubuntu 中运行终端(gcc 自带),我使用什么命令来配置 gcc 转换为 MIPS?我还需要安装什么吗?

编辑:让我澄清一下。请阅读这个。我不是在寻找要使用哪个编译器,或者人们说“你可以交叉编译,但你应该使用没有关于如何设置说明的其他东西。”

如果你要发布那个,至少要让我引用说明。 GCC 随 Ubuntu 一起提供。我没有安装编译器的经验,要找到 GCC 以外的任何在线教程并不容易。然后是交叉编译的情况,我也需要了解。谢谢。

最佳答案

GCC 可以为大量架构生成汇编代码,包括 MIPS。但是,当 GCC 本身被编译时,给定的 GCC 实例针对的是什么架构。您将在 Ubuntu 系统中找到的预编译二进制文件知道 x86(可能是 32 位和 64 位模式)但不知道 MIPS。

使用与运行 GCC 本身的架构不同的目标架构编译 GCC 被称为准备一个交叉编译工具链。这是可行的,但需要大量的文档阅读和耐心;您通常需要先构建交叉汇编器和交叉链接器 (GNU binutils),然后再构建交叉 GCC 本身。

我推荐使用 buildroot .这是一组脚本和 makefile,旨在帮助生成完整的交叉编译工具链和实用程序。最终,您将获得针对目标系统的完整操作系统和开发工具。这包括您需要的交叉编译器。

另一个完全不同的解决方案是使用 QEMU .这是一个用于各种处理器和系统(包括 MIPS 系统)的仿真器。您可以使用它来运行带有 MIPS 处理器的虚拟机,并在该机器内安装 MIPS 操作系统,例如Debian ,一个 Linux 发行版。这样,您将获得一个本地 GCC(一个在 MIPS 系统上运行并为 MIPS 生成代码的 GCC)。

QEMU 方式可能更简单一些;使用交叉编译需要了解一些繁琐的细节。无论哪种方式,您都需要大约 1 GB 的可用磁盘空间。

关于c - 有没有办法使用 gcc 将 C 转换为 MIPS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4175450/

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