当前位置: 首页 > news >正文

arm-eabi-gcc 和 arm-none-eabi-gcc 都是基于 GCC 的交叉编译器

 arm-eabi-gcc 和 arm-none-eabi-gcc 都是基于 GCC 的交叉编译器,用于编译 ARM 架构的嵌入式系统。它们的命名规则如下:

  • arm 表示目标架构是 ARM。
  • eabi 表示嵌入式应用程序二进制接口(Embedded Application Binary Interface),是一种用于嵌入式系统的标准接口。
  • gcc 表示 GNU 编译器集合(GNU Compiler Collection),是一种开源的编译器。
  • none 表示没有指定供应商或操作系统。

它们的主要区别是:

  • arm-eabi-gcc 是 Android 平台使用的交叉编译器,它可以编译 Android 的 boot、kernel、filesystem 和应用程序等。它使用的是 Bionic C 库,这是一种专门为 Android 设计的轻量级 C 库。1
  • arm-none-eabi-gcc 是 ARM 官方提供的交叉编译器,它可以编译 ARM 的裸机系统,不适用于编译 Linux 应用程序。它使用的是 Newlib C 库,这是一种专门为嵌入式系统设计的小型 C 库。2

我在网上搜索了一些可能的来源和下载链接,您可以参考以下信息:

  • Android NDK | Android Developers:这是 Android NDK 的官方网站,Android NDK 是一个用于在 Android 应用中集成 C 和 C++ 代码的工具集。Android NDK 提供了一系列的工具,包括 arm-eabi-gcc,来帮助您构建,调试和优化您的本地代码。您可以在这个网站上下载 Android NDK 的最新版本,然后按照文档的指导来使用 arm-eabi-gcc 编译器。
  • GNU Arm Embedded Toolchain Downloads:这是 GNU Arm Embedded Toolchain 的官方网站,它是一个免费的、开源的、用于 C、C++ 和汇编编程的工具集。它支持 32 位的 ARM Cortex-A、ARM Cortex-M 和 ARM Cortex-R 处理器系列。它可以在 Windows、Linux 和 Mac OS X 操作系统上进行嵌入式软件开发。您可以在这个网站上下载该工具链的最新版本,也可以找到源代码包和安装说明。
  • ARM-Linux 交叉编译工具链安装_arm-linux-gcc交叉编译工具链安装-CSDN博客:这是一个 CSDN 博客的网页,它介绍了如何在 Linux 系统上安装 arm-linux-gnueabihf-gcc 交叉编译工具链,它是由 Linaro 公司基于 GCC 推出的一个工具链,可以用于编译 ARM(32 位)系统中所有环节的代码。
  • ARM交叉编译工具链 gnueabi、none-eabi、arm-eabi、gnueabihf、gnueabi区别-CSDN博客:这是一个 CSDN 博客的网页,它解释了不同的交叉编译器的命名规则,包括 gnueabi、none-eabi、arm-eabi、gnueabihf、gnueabi 等后缀的含义和区别。
  • 交叉编译学习笔记(二)——交叉编译器的命名规则-腾讯云开发者社区-腾讯云:这是一个腾讯云开发者社区的网页,它也介绍了交叉编译器的命名规则,以及如何选择合适的交叉编译器。

 arm-eabi-gcc 交叉编译器

您提供的网站是 Arm GNU Toolchain 的官方网站,它提供了不同的主机操作系统和目标架构的交叉工具链。您可以根据您的需求选择合适的下载链接,但是我建议您参考以下的指导:

  • 如果您的主机操作系统是 Windows,您可以选择 Windows 32-bit Installer 或者 Windows 32-bit ZIP package。这两个链接都可以提供 arm-none-eabi-gcc 编译器,但是安装器可以自动将编译器的路径添加到您的环境变量中,而 ZIP 包则需要您手动解压缩和配置。您可以根据您的喜好选择其中一个。
  • 如果您的主机操作系统是 Linux,您可以选择 Linux x86_64 Tarball 或者 Linux AArch64 Tarball。这两个链接都可以提供 arm-none-eabi-gcc 编译器,但是您需要根据您的主机架构选择合适的版本。如果您的主机是 x86_64 架构,您可以选择 Linux x86_64 Tarball;如果您的主机是 AArch64 架构,您可以选择 Linux AArch64 Tarball。您需要解压缩这些文件,然后将编译器的路径添加到您的环境变量中,才能使用这个编译器。
  • 如果您的主机操作系统是 Mac OS X,您可以选择 Mac OS X 64-bit Tarball 或者 Mac OS X 64-bit Package。这两个链接都可以提供 arm-none-eabi-gcc 编译器,但是 Tarball 需要您手动解压缩和配置,而 Package 可以自动安装和配置。您可以根据您的喜好选择其中一个。

您可以在这个网页上找到这些下载链接:GNU Arm Embedded Toolchain Downloads。您也可以在这个网页上找到更多的信息,如安装说明、源代码包、已知问题等。


 

http://www.lryc.cn/news/246128.html

相关文章:

  • 《大话设计模式》(持续更新中)
  • 人工智能原理复习--绪论
  • [网络] 字节一面~ 2. HTTP 2 与 HTTP 1.x 有什么区别
  • 自己动手实现一个深度学习算法——八、深度学习
  • js闭包的必要条件及创建和消失(生命周期)
  • 鸿蒙开发-ArkTS 语言-基础语法
  • GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
  • 电子学会C/C++编程等级考试2022年03月(三级)真题解析
  • 理解 JUnit, JaCoCo 到 SonarQube 的过程及 Maven 配置
  • 人工智能关键技术决定机器人产业的前途
  • 2023华为ICT网络初赛试题回顾
  • Hands-on Machine Learning with Scikit-Learn,Keras TensorFlow
  • 242. 有效的字母异位词
  • TUP通信——与多个客户端同时通信
  • 基于helm的方式在k8s集群中部署gitlab - 备份恢复(二)
  • B树与B+树的对比
  • 关键路径-STL版/拓扑排序 关键路径【数据结构】
  • 最新AI创作系统ChatGPT系统运营源码,支持GPT-4图片对话能力,上传图片并识图理解对话,支持DALL-E3文生图
  • 小航助学题库蓝桥杯题库stem选拔赛(21年3月)(含题库教师学生账号)
  • [python]离线加载fetch_20newsgroups数据集
  • Python与设计模式--代理模式
  • ubuntu挂载磁盘,以及开机自动挂载磁盘
  • Jetpack Compose中适应性布局的新API
  • 小航助学题库蓝桥杯题库stem选拔赛(22年1月)(含题库教师学生账号)
  • 蓝桥杯第100 题 九宫幻方 DFS 全排列 C++ 解题思维
  • NOI / 1.10编程基础之简单排序 提问05:分数线划定 c语言 结构体
  • 再探Docker:从Docker基础到跨服务器部署
  • C# 使用PanGu分词
  • Termius 一款优秀的跨平台 SSH 客户端工具
  • 生命科学领域 - 新药从研发到上市全流程