热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在DS5中集成最新编译器工具链的方法与步骤

本文详细介绍了在DS-5开发工作室中集成最新编译器工具链的方法与步骤。通过逐步指导,帮助用户高效地配置和使用最新的编译器,以提升开发效率和代码质量。此外,还提供了常见问题的解决方案和最佳实践建议,确保用户能够顺利进行开发环境的升级。

https://developer.arm.com/tools-and-software/embedded/legacy-tools/ds-5-development-studio/resources/tutorials/adding-new-compiler-toolchains-to-ds-5?_ga=2.117867786.286670378.1568853643-1974163481.1552961522


将新的编译器工具链添加到DS-5

在本教程中,您将学习如何将新的编译器工具链(Arm Compiler 5,Arm Compiler 6和GCC)添加到DS-5,并轻松地为您的项目配置它们。


介绍

从Arm DS-5 Development Studio v5.20开始,您可以添加新的编译器工具链(Arm Compiler 5,Arm Compiler 6和GCC),并为您的项目更轻松地配置它们。当您在它们之间切换时,同一工具链的不同版本将保留其标志,并且您和您的同事之间可以共享项目,而无需重新配置路径。

 

注意:如果您正在安装Arm Compiler 6和DS-5,并且您没有DS-5 Ultimate Edition许可证,则需要设置以下环境变量:ARM_TOOL_VARIANT=pro。这可以set ARM_TOOL_VARIANT=pro在DS-5命令提示符中使用,也可以在操作系统中作为全局环境变量使用。


DS-5设置

打开DS-5并单击窗口>首选项,然后单击DS-5

选择工具链,将显示以下对话框:

DS-5包括三个编译器工具链:Arm Compiler 5,Arm Compiler 6和GCC。这些被列为“内置”,表明它们已经安装。

注意: DS-5列出了编译器的主要版本号(即Arm Compiler 5)。这样,当我们更新包含的编译器时,您的项目可以在DS-5版本之间移植。当您添加特定版本(例如Arm Compiler 5.04u2)时,这将显示子版本。

点击添加...

如果您已经下载了编译器工具链,请浏览到toolchain bin目录的位置。

否则你可以:

要么


  • 转到  ds.arm.com  并下载Arm Compiler 6工具链。

  • 下载GCC工具链:

    1. 如果您正在为Cortex-A编译,请从linaro.org中选择一个工具链  。
      - 有关Linaro工具链发布,支持和选择的更多信息,请访问https://wiki.linaro.org/WorkingGroups/ToolChain/FAQ。
    2. 如果要编译Cortex-R或Cortex-M,请从GNU Arm Embedded Toolchain中选择一个工具  链。
      - 有关GNU Arm嵌入式工具链发布,支持和选择的更多信息,请访问https://developer.arm.com/open-source/gnu-toolchain/gnu-rm。

选择工具链的二进制文件的位置

在这种情况下,我已经下载并安装了GCC 7.3.1。

单击下一步>以运行自动检测。在大多数情况下,这应提供有关工具链的完整信息。但是,对于GCC的自定义实现,您可以手动编辑这些字段。

在DS-5中成功自动检测GCC工具链

单击“ 完成”以完成该过程。

您现在应该看到与内置工具链一起列出的新工具链:

GCC 4.9.1现在与其他工具链一起出现在列表中

系统将提示您重新启动Eclipse以应用这些更改。完成此操作后,您将能够在启动新项目时看到作为选项列出的新工具链:

新项目,可选择使用GCC 4.9.1工具链

此外,您可以通过右键单击项目来重新配置现有项目以使用新添加的工具链,选择Properties> C / C ++ Build> Tool Chain Editor,然后在Current toolchain下拉列表中选择它:

重新配置现有项目以使用新工具链

最后,您会注意到,如果您在同一工具链的不同版本之间切换,DS-5现在将记住您的标志和其他设置,因此无需重新输入它们。但是,当在不同的工具链(例如Arm Compiler 5和Arm Compiler 6)之间移动时,情况并非如此。

也可以使用DS-5命令提示符添加和/或选择新的工具链。您会注意到,在启动时,命令提示符现在包含一条消息,说明默认情况下没有设置工具链,以及select_toolchain开始选择工具链的命令。

命令提示符

要添加新工具链,请使用add_toolchain命令后跟二进制文件所在文件夹的路径。例如add_toolchain "C:\Program Files (x86)\Linaro\gcc-linaro-aarch64-linux-gnu-4.9-2014.05\bin"。就像GUI一样,您将有机会完成该过程,或手动编辑详细信息:

从命令提示符添加新工具链

输入select_toolchain会显示包含新工具链的编号列表:

从命令提示符处选择一个新工具链


推荐阅读
  • cJinja:C++编写的轻量级HTML模板引擎
    本文介绍了cJinja,这是一个用C++编写的轻量级HTML模板解析库。它利用ejson来处理模板中的数据替换(即上下文),其语法与Django Jinja非常相似,功能强大且易于学习。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 如何在Linux中实现字符设备控制
    本文详细探讨了在Linux环境下控制字符设备的方法,包括蜂鸣器和模数转换器(ADC)的实际操作案例。对于开发者来说,了解这些基础知识对于嵌入式系统的开发尤为重要。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • 俗话说得好,“工欲善其事,必先利其器”。这句话不仅强调了工具的重要性,也提醒我们在任何项目开始前,准备合适的工具至关重要。本文将介绍几款C语言编程中常用的工具,帮助初学者更好地选择适合自己学习和工作的编程环境。 ... [详细]
  • 在Ubuntu 16.04 LTS上配置Qt Creator开发环境
    本文详细介绍了如何在Ubuntu 16.04 LTS系统中安装和配置Qt Creator,涵盖了从下载到安装的全过程,并提供了常见问题的解决方案。 ... [详细]
  • 解决微信电脑版无法刷朋友圈问题:使用安卓远程投屏方案
    在工作期间想要浏览微信和朋友圈却不太方便?虽然微信电脑版目前不支持直接刷朋友圈,但通过远程投屏技术,可以轻松实现在电脑上操作安卓设备的功能。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文详细记录了在银河麒麟操作系统和龙芯架构上使用 Qt 5.15.2 进行项目打包时遇到的问题及解决方案,特别关注于 linuxdeployqt 工具的应用。 ... [详细]
  • ###问题删除目录时遇到错误提示:rm:cannotremoveusrlocaltmp’:Directorynotempty即使用rm-rf,还是会出现 ... [详细]
  • 解析SQL查询结果的排序问题及其解决方案
    本文探讨了为什么某些SQL查询返回的数据集未能按预期顺序排列,并提供了详细的解决方案,帮助开发者理解并解决这一常见问题。 ... [详细]
  • 本文详细介绍了C语言的起源、发展及其标准化过程,涵盖了从早期的BCPL和B语言到现代C语言的演变,并探讨了其在操作系统和跨平台编程中的重要地位。 ... [详细]
  • 深入理解动态链接库及其应用
    本文将探讨动态链接库的基本概念,包括Windows下的动态链接库(DLL)和Linux下的共享库(Shared Library),并详细介绍如何在Linux环境中创建和使用这些库。 ... [详细]
  • 在使用高德地图内置导航功能时遇到AMapNavi组件出现空指针异常,经过多次排查发现问题是由于so库的兼容性引起的。本文将详细介绍如何通过调整项目配置来解决这一问题。 ... [详细]
author-avatar
相依相伴一起慢慢变老
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有