0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CDT 4.0提高生产力并提供更大的可扩展性

星星科技指导员 ? 来源:嵌入式计算设计 ? 作者:Doug Schaefer ? 2022-06-22 11:30 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

CDT 中有什么

CDT 主要关注软件开发的编辑、构建和调试周期。它的主要目标是提高程序员用 C 和 C++ 编写代码的效率,同时利用开发人员已经用于构建和调试的高质量工具链。最初,CDT 项目专注于使用 GNU 工具链的开发人员,包括 gcc 和 gdb,这是迄今为止开源社区中最流行的工具集。但是,CDT 项目现在也支持其他环境,直接或通过商业供应商提供的基于 CDT 的环境。

CDT 遵循与其他基于 Eclipse 的开发环境相同的用户界面和项目资源结构。用户界面包含一组视图和编辑器,这些视图和编辑器显示为 Eclipse 窗口的选项卡式部分。视图显示有关项目的各种信息,编辑器允许开发人员更改项目中的文件。可以将视图组织到称为透视图的页面中,这些页面可以自定义视图的布局以用于各种目的,例如编辑和调试。用户还可以根据自己的特定需求调整和保存视角。图 1 显示了 C/C++ 透视图。

图 1: C/C++ 透视图

poYBAGKyjOOAdoBjAAuJtWz4Sbw025.png

Eclipse 中的项目是用户使用的顶级资源。通常,项目映射到用户文件系统中的根目录。Eclipse 插件可以递归地访问该目录及其子目录中的每个文件。Eclipse 还提供了将其他文件和目录链接到项目结构中的机制,但不提供排除文件的通用机制。

Eclipse 平台提供对文件和项目的管理。CDT 扩展了这种管理以区分源文件、目标文件和其他文件类型;它还提供文件内容的结构化表示。使用这种表示,CDT 填充大纲视图(显示当前文件中的目录)和 C/C++ 项目视图(显示可用项目中的目录)。

CDT 核心还维护每个项目的符号数据库。这个称为索引的数据库允许许多功能提供源代码分析和导航。例如,用户可以在源代码中选择一个函数名称并进行搜索以找到对该函数的所有引用。然后,用户可以调用重命名重构功能来更改整个项目中该函数的名称。

CDT 编辑器提供了开发人员在高级集成开发环境 (IDE) 中所期望的许多生产力功能。最大的生产力增强器是内容辅助功能,它使用来自 CDT 内置解析器的信息来提供有效的代码完成,给定当前包含光标的上下文。该编辑器还提供代码着色,区分关键字和标识符以增强代码可读性,以及括号匹配和自动制表符,使复杂的代码结构更容易输入。

CDT 还包含以下两个构建系统:

标准构建:重用用户现有的构建基础设施。此功能对于在传统 make 文件上投入巨资以确保高质量、可重复构建的项目团队尤其重要。

托管构建:允许工具供应商提供高级用户界面来设置编译和链接选项;它还自动调用构建。托管构建对于新项目和宁愿花时间编写源代码而不是创建构建文件的用户很有用。

CDT 调试透视图提供了调试会话的可视化(参见图 2)。原生调试器(如 gdb)处理执行应用程序、设置断点和提取变量值的具体细节。表 1 总结了调试透视图提供的可视化。

此视图显示器

调试当前调试会话以及正在调试的应用程序的线程和堆栈帧

变量当前堆栈帧的变量值

登记CPU 寄存器的当前值

记忆内存的二进制内容

拆卸当前执行位置的指令的汇编代码

表格1

图 2: CDT 调试透视图提供了调试会话的可视化

poYBAGKyjO2AF7okAABN1FdwdG8374.png

CDT 4.0 中的新功能

CDT 4.0 计划于今年六月发布。随着 CDT 贡献者的大量涌入,新版本将引入一些令人兴奋的功能,以改善用户体验、提高生产力并提供更大的可扩展性。正在开发的功能包括:

内部构建器:通过消除处理 make 文件的需要来提高构建性能。为了确定构建必须处理哪些文件,Internal Builder 使用 Eclipse 跟踪文件更改的能力并使用存储在 CDT 源索引中的文件间依赖关系信息。构建器可以并行化编译器以在多核机器上提供更快的构建时间。

支持预建索引信息:为了进一步提高索引性能,CDT 索引器将允许软件开发工具包 (SDK) 供应商,包括主要操作系统供应商,为 SDK 提供的头文件预建索引信息。索引器然后可以将此信息与用户代码的索引集成,从而无需在用户环境中解析 SDK 头文件。

增强的索引信息: CDT 团队增强了捕获的索引信息以启用新的导航

和源代码分析视图。Call Hierarchy View(图 3)允许在函数和它们调用或被调用的函数之间导航。Include Hierarchy View 允许基于包含关系在文件之间导航,Type Hierarchy View 可以基于继承关系在 C++ 类之间导航。

图 3:调用层次结构视图

poYBAGKyjPWAHub-AAomrIUrxqI974.png

对 Windows SDK 的支持:最近,Microsoft 提供了它的编译器作为其 Windows SDK 的免费下载。CDT 4.0 将包括构建和调试支持,让这些工具与 CDT 项目一起工作。因此,开发人员将不再需要在 Windows 上使用 GNU 工具,这些工具由于需要仿真环境(如 cygwin)或不完整的 SDK 支持(如 mingw)而存在问题。这种构建和调试支持还将为 Visual Studio 用户在未来将他们的项目迁移到 CDT 打开大门。

项目生成框架:许多针对特定平台的 IDE 可以为各种项目类型生成框架项目。例如,桌面 GUI 应用程序的项目可以生成足够的源代码以使框架运行并在屏幕上显示窗口。此样板代码为开发人员在构建项目时提供了一个良好的开端。CDT 4.0 将为此类项目生成提供框架。

CDT 4.0 将成为 CDT 的里程碑式版本。除了允许 CDT 团队确定 API 之外,该版本还引入了新功能,使 CDT 成为所有开发人员构建 C/C++ 应用程序的有吸引力的环境,无论他们针对哪个平台。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • WINDOWS
    +关注

    关注

    4

    文章

    3618

    浏览量

    91834
  • C++
    C++
    +关注

    关注

    22

    文章

    2120

    浏览量

    75821
  • 编译器
    +关注

    关注

    1

    文章

    1663

    浏览量

    50495
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    市场上的工控机改如何选择?接口与扩展性需求分析

    在边缘计算时代,工控机的选择需紧密围绕实时性、可靠性、环境适应性三大工业核心需求,同时兼顾算、接口与扩展性的平衡。以下是关键考量因素及选型策略: 一、算需求分析:从场景出发分层选型 传感器数据
    的头像 发表于 08-06 16:52 ?201次阅读
    市场上的工控机改如何选择?接口与<b class='flag-5'>扩展性</b>需求分析

    “一句话秒出PPT“的荣耀YOYO,AI生产力有多强?

    释放AI生产力,荣耀让智能体告别发布会炫技
    的头像 发表于 07-14 14:15 ?1951次阅读
    “一句话秒出PPT“的荣耀YOYO,AI<b class='flag-5'>生产力</b>有多强?

    工业4.0智能化的高性能引擎

    控制系统(如PLC)已难以满足现代智能工厂对算、通信和安全性的需求,而嵌入式核心板凭借高性能、低功耗和扩展性,正成为工业4.0的关键计算平台。 ? 明远智睿推出的**SSD2351
    的头像 发表于 06-27 14:57 ?284次阅读

    瑞萨电子RA系列微控制器的扩展性强的配置软件包 (FSP)安装下载与使用指南

    瑞萨电子RA系列微控制器的扩展性强的配置软件包 (FSP)安装下载与使用指南
    的头像 发表于 06-11 17:21 ?789次阅读

    AI与云端生产力结合应用场景及技术解析(2025)

    AI与云端生产力结合应用场景及技术解析(2025) 一、核心技术架构? 云原生与智能算网络? 采用容器化、微服务等云原生技术实现应用敏捷开发与弹性扩展,支撑工业大模型训练、城市级数据实时计算等高
    的头像 发表于 04-15 08:41 ?428次阅读
    AI与云端<b class='flag-5'>生产力</b>结合应用场景及技术解析(2025)

    IAR推动嵌入式开发:云就绪、扩展的CI/CD和持续自动化

    IAR正式发布全新云就绪平台,为嵌入式开发团队提供企业级的扩展性、安全性和自动化能力。
    的头像 发表于 04-07 11:21 ?314次阅读

    罗克韦尔自动化MES系统助力企业提高生产力(下)

    承接上期文章,罗克韦尔自动化亚太区企业软件咨询业务经理 Amit Wadaskar 继续针对企业运用智能技术提高生产力的问题进行探讨。
    的头像 发表于 02-21 15:20 ?700次阅读

    东风岚图汽车入选央视2024新质生产力年度案例

    近日,中央广播电视总台央视财经频道播出“2024新质生产力年度盛典”,东风汽车旗下高端智慧新能源品牌东风岚图“绿色引擎”成功入选“2024新质生产力年度案例”十大案例,成为唯一入围车企。
    的头像 发表于 01-22 10:19 ?602次阅读

    易控智驾持续助力矿山新质生产力发展

    当今科技日新月异,新质生产力正以前所未有的速度推动着社会经济的进步,这不仅代表了技术革命性突破和生产要素创新性配置的集合,更是产业升级和转型的重要驱动力。在这场生产力变革的浪潮中,易控智驾以其卓越
    的头像 发表于 01-16 10:34 ?567次阅读

    中微公司加快科技创新与新质生产力发展

    半导体微观加工设备作为数码产业的基石,是发展集成电路和数码产业的关键,中微公司自2004年成立以来,一直致力于开发和提供先进的微观加工所需的高端关键设备,是典型的新质生产力代表。
    的头像 发表于 01-06 10:57 ?766次阅读

    Perforce Helix Core通过ISO 26262认证!为汽车软件开发团队提供无限扩展性、细粒度安全性、文件快速访问等

    News!Helix Core通过ISO 26262认证,符合汽车系统开发所需的安全和可靠性标准,助力汽车软件安全合规!具备无限扩展性、细粒度安全性、文件快速访问...是众多汽车OEM和供应商的首选版本控制工具。
    的头像 发表于 11-12 14:41 ?1315次阅读
    Perforce Helix Core通过ISO 26262认证!为汽车软件开发团队<b class='flag-5'>提供</b>无限<b class='flag-5'>可</b><b class='flag-5'>扩展性</b>、细粒度安全性、文件快速访问等

    58大新质生产力产业链图谱

    ? 新质生产力是经济增长动能切换的必然路径。新质生产力被定义为由技术性革命突破、生产要素创新性配置、产 业深度转型升级催生的,具备高科技、高效能、高质量特征的,能够实现劳动者、劳动资料、劳动对象三
    的头像 发表于 11-09 10:16 ?1084次阅读
    58大新质<b class='flag-5'>生产力</b>产业链图谱

    GPU算租用平台怎么样

    GPU算租用平台以其成本效益、灵活性与扩展性、简化运维以及即时访问等优势,在深度学习、科学计算、图形渲染等多个领域发挥着重要作用。
    的头像 发表于 10-17 10:03 ?605次阅读

    聚焦培育新质生产力,小笨智能深耕服务机器人赛道

    新质生产力以科技创新为基础,通过深度融合通用技术和专用技术,实现生产效率、质量和创新能力的跨越式提升。培育和发展新质生产力,企业创新是基石。作为一家集研发、生产、销售、运营于一体的全栈
    的头像 发表于 09-04 10:48 ?924次阅读

    使用低成本MSPM0 MCU在无线电动工具和园艺工具中实现扩展性

    电子发烧友网站提供《使用低成本MSPM0 MCU在无线电动工具和园艺工具中实现扩展性.pdf》资料免费下载
    发表于 09-02 11:47 ?2次下载
    使用低成本MSPM0 MCU在无线电动工具和园艺工具中实现<b class='flag-5'>可</b><b class='flag-5'>扩展性</b>