mips装配问题

时间:2009-09-10 06:48:09

标签: c assembly embedded linker mips

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

还有什么在构建裸机交叉编译器和交叉工具链之间的区别

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

3 个答案:

答案 0 :(得分:1)

确保你有

#include <stdio.h>

位于使用printf的C源文件的顶部。

答案 1 :(得分:0)

  

还有什么在构建裸机交叉编译器和交叉工具链之间的区别

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

除了gcc之外,我们还需要

  • binutils(针对目标平台)
  • 内核(目标平台)
  • glibc(针对目标平台)

查看this book了解详细信息。

答案 2 :(得分:0)

你是如何编译的? Eclipse或命令行?我在Eclipse中遇到了类似的问题,发现Eclipse中的处理器系列是“空的”。这导致汇编程序无法理解编译器的输出,类似于您所描述的症状。

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

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

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