ARM交叉编译工具链

为什么要用交叉编译器?

交叉编译通俗地讲就是在一种平台上编译出能运行在体系结构不同的另一种平台上的程序比如在PC平台(X86 CPU)上编译出能运行在以ARM为内核的CPU平台上的程序,编译得到的程序在X86 CPU平台上是不能运行的,必须放到ARM CPU平台上才能运行,虽然两个平台用的都是Linux系统

arm交叉编译器

交叉编译工具链是一个由编译器连接器解释器组成的综合开发环境,交叉编译工具链主要由binutils、gcc和glibc三个部分组成。有时出于减小 libc 库大小的考虑,也可以用别的 c 库来代替 glibc,例如 uClibc、dietlibc 和 newlib。建立交叉编译工具链是一个相当复杂的过程,如果不想自己经历复杂繁琐的编译过程,网上有一些编译好的可用的交叉编译工具链可以下载,但就以学习为目的来说读者有必要学习自己制作一个交叉编译工具链(目前来看,对于初学者没有太大必要自己交叉编译一个工具链)。

分类和说明

从授权上,分为免费授权版和付费授权版。

免费版目前有三大主流工具商提供,第一是GNU(提供源码,自行编译制作),第二是 Codesourcery,第三是Linora。

收费版有ARM原厂提供的armcc、IAR提供的编译器等等,因为这些价格都比较昂贵,不适合学习用户使用,所以不做讲述。

  • arm-none-linux-gnueabi-gcc:是 Codesourcery 公司(目前已经被Mentor收购)基于GCC推出的的ARM交叉编译工具。可用于交叉编译ARM(32位)系统中所有环节的代码,包括裸机程序、u-boot、Linux kernel、filesystem和App应用程序。
  • arm-linux-gnueabihf-gcc:是由 Linaro 公司基于GCC推出的的ARM交叉编译工具。可用于交叉编译ARM(32位)系统中所有环节的代码,包括裸机程序、u-boot、Linux kernel、filesystem和App应用程序。
  • aarch64-linux-gnu-gcc:是由 Linaro 公司基于GCC推出的的ARM交叉编译工具。可用于交叉编译ARMv8 64位目标中的裸机程序、u-boot、Linux kernel、filesystem和App应用程序。
  • arm-none-elf-gcc:是 Codesourcery 公司(目前已经被Mentor收购)基于GCC推出的的ARM交叉编译工具。可用于交叉编译ARM MCU(32位)芯片,如ARM7、ARM9、Cortex-M/R芯片程序。
  • arm-none-eabi-gcc:是 GNU 推出的的ARM交叉编译工具。可用于交叉编译ARM MCU(32位)芯片,如ARM7、ARM9、Cortex-M/R芯片程序。

 交叉编译器下载

以上地址都是直接从官网转存到百度云盘,仅为方便国内用户下载使用,并非本站制作,请勿用于商业或者非法用途。因为版本多难以选择,所以我们建议您使用该类编译器的最新版本。

18条评论

玩物 says: 回复

希望什么时候能够有一些关于开发环境搭建的介绍,win下linux下ARM M系列,A系列的开发环境

VeryARM says:

好建议,后面会加上。

lzp20 says: 回复

Codesourcery的官网下载不了,要注册用户。

VeryARM says:

Codesourcery官网被mentor收购后,确实是需要注册后才能下载的,流程比较复杂一点。

zjf_linux says: 回复

好。。。。。。。。。。。。。。。。。。。。。。。。。

lengyue_gg says: 回复

Linora -> Linaro

伊莉娜泳装 says: 回复

xuanxuan170 says: 回复

非常不错 给力哦

xsbh0310 says: 回复

好东西…

菜芽虎虎 says: 回复

IAR也是交叉编译工具??

xsbh0310 says: 回复

学习了…

mastermouse says: 回复

群主有开设一个群吗?方便交流. 你的站点做得非常好.简单易懂

Gooder says:

暂时没有呢

mastermouse says:

可以开设一个,推动ARM Linux同行的交流,行业发展

ghost says: 回复

官网速度慢

118lwc says: 回复

这个网站正不错,看样子博主很厉害呀

大嘴巴嘟嘟 says: 回复

好久没更新了哦!

lulu says: 回复

群主,arm-none-eabi-gcc工具链不是支持Cortex-M/R吗?可是我在添加了-mcpu=cortex-m3时告诉我不支持连m1都不支持呀?群主有没有支持m4的工具链?跪求

发表评论

电子邮件地址不会被公开。 必填项已用*标注

昵称 *

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据