arm linux gcc和arm none linux gnueabi之间的区别是什么

arm linux gcc和arm none linux gnueabi之间的区别是什么,gcc,arm,Gcc,Arm,arm linux gcc和arm none linux gnueabi以及arm linux gnueabi之间的区别是什么 工具链 它们的编译方式不同吗 工具链有一个松散的名称约定,如arch[-vendor][-os]-abi arch用于架构:arm,mips,x86,i686 供应商是工具链供应商:苹果 os用于操作系统:linux,none(裸机) abi用于应用程序二进制接口约定:eabi,gnueabi,gnueabihf 对于您的问题,armnonelinuxgnueabi

arm linux gcc和arm none linux gnueabi以及arm linux gnueabi之间的区别是什么 工具链


它们的编译方式不同吗

工具链有一个松散的名称约定,如
arch[-vendor][-os]-abi

  • arch
    用于架构:armmipsx86i686
  • 供应商
    是工具链供应商:苹果
  • os
    用于操作系统:linuxnone(裸机)
  • abi
    用于应用程序二进制接口约定:eabignueabignueabihf
对于您的问题,
armnonelinuxgnueabi
armlinuxgnueabi
是一样的
ARMLinuxGCC
实际上是二进制的gcc,它为arm体系结构生成对象,以便在linux上运行,并使用工具链提供的默认配置(abi)


一些不错的阅读:。

这可能是真的,但实际上,没有足够的信息来确定。你需要知道工具链的起源。然而,非“gnueabi”工具链可能非常罕见。您是在谈论armlinuxgcc吗?或者您可以澄清一下吗?值得指出的是,工具链配置了默认的标题和库搜索路径。交叉编译时,它们应该指向目标映像,而不是开发机器自己的头和库。因此,您可以很容易地得到一个编译器,该编译器将其规范报告为
armnonelinuxgnueabi
,实际编译结果略有不同。您可以通过
gcc-print sysroot
@auselen检查这一点:是的,
armlinux
对我来说似乎模棱两可。我没有检查,在当前的gcc中,这可能是一个同义词,但我敢打赌,它在过去的意义有所不同。此外,三元组只指定默认配置,工具链可以在启用其他设置的情况下构建;在这种情况下,我会选择通用的三元组,而不是让它撒谎。@ams如果我理解正确,您会说arm linux gcc在构建工具链时执行默认设置。是的,你完全正确。相关: