0

我的 mips 端口有问题....每当我尝试使用 printf 语句编译 C 程序时,它都会发出警告说它无法识别,并且在生成的汇编文件中没有 .asciiz 指令...字符串是不在那里....谁能告诉我为什么?

以及构建裸机交叉编译器和交叉工具链之间的区别是什么

我是交叉编译器世界的新手.... :-)

4

3 回答 3

1

确保你有

#include <stdio.h>

在使用printf.

于 2009-09-10T07:31:38.670 回答
0

以及构建裸机交叉编译器和交叉工具链之间的区别是什么

交叉编译器(即 gcc )是交叉工具链的一部分。

除了 gcc ,我们还需要

  • binutils(用于目标平台)
  • 内核(目标平台的)
  • glibc(用于目标平台)

看看这本书的详细信息。

于 2009-09-10T09:56:49.663 回答
0

你是怎么编译的?Eclipse 还是命令行?我在使用 Eclipse 时遇到了类似的问题,发现处理器系列在 Eclipse 中是“空的”。这导致汇编器不理解编译器的输出,类似于您描述的症状。

交叉编译器与普通编译器并没有什么不同:

  • 输出的二进制可能与构建计算机不兼容(可以用于多个平台)
  • 编译器可能能够输出许多不同平台的代码

在 GCC 的情况下,它可以加载一个或多个处理器系列。Cygwin 附带的 GCC 非常有限(i686);在Linux中你会有更多的选择。我建议你提出一个不同的问题,关于如何设置你需要帮助的交叉编译。

于 2009-09-10T10:19:47.157 回答