手臂gcc工具如手臂精灵或臂无 - EABI,有什么区别? [英] arm gcc toolchain as arm-elf or arm-none-eabi, what is the difference?

查看:206
本文介绍了手臂gcc工具如手臂精灵或臂无 - EABI,有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当你建立一个gcc工具有建立它作为臂精灵或臂无 - EABI的可能性,但有什么区别?

When you build a gcc toolchain there is the possibility to build it as arm-elf or as arm-none-eabi, but what is the difference?

我用今天EABI,但那只是因为其他人似乎这样做...但由于这是一个非常糟糕的说法,这将是非常好的理解上的差异。

I use the eabi today, but that is just since everyone else seem to do that... but since that is a really bad argument, it would be really nice to understand the difference.

注意:此工具链将crosscompile基于Cortex-M3的MCU code:就像在STM32

Note: This toolchain will crosscompile code for Cortex-M3 based mcu:s like the stm32.

感谢

有些链接

EABI:

ELF:

推荐答案

每个体系结构或架构/ OS夫妇有一个ABI。该ABI(应用程序二进制接口)描述的功能如何被调用,系统调用号,参数传递,哪些寄存器可用于...

Each architecture or architecture/os couple has an ABI. The ABI (Application binary Interface) describes how functions should be called, syscalls numbers, arguments passed, which registers can be used ...

ABI的描述了编译器如何生成汇编。

The abi describes how the compiler should generate the assembler.

如果你只使用汇编你不需要关心ABI。

If you use only assembler you don't need to care about the ABI.

臂精灵和臂无 - EABI只使用ARM ABI的两个版本。该工具链EABI采用了较新的版本,但也可以被称为臂精灵EABI,因为它会产生小精灵了。

arm-elf and arm-none-eabi just use two versions of the Arm ABI. The eabi toolchain uses a newer revision, but could also be called arm-elf-eabi, as it generates elf too.

这篇关于手臂gcc工具如手臂精灵或臂无 - EABI,有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆