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

    文章

    3707

    浏览量

    94337
  • C++
    C++
    +关注

    关注

    22

    文章

    2131

    浏览量

    77414
  • 编译器
    +关注

    关注

    1

    文章

    1673

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    从关键词看新质生产力,瑞之辰践行创新驱动发展

    AI浪潮、极速连接、绿色转型、产业升级……这些关键词都透露出“引领发展新质生产力”“因地制宜发展新质生产力”,已成为未来五年产业发展的既定方向。无论是AI人工智能、“新三样”绿色转型和产业智能化方向
    的头像 发表于 12-11 13:23 1135次阅读
    从关键词看新质<b class='flag-5'>生产力</b>,瑞之辰践行创新驱动发展

    湘军,让算变成生产力

    脑极体
    发布于 :2025年11月25日 22:56:58

    IPv6 筑牢新质生产力网络底座

    2025年10月29日,第四届中国IPv6创新发展大会互联网新质发展分论坛现场,《新质互联网智鉴报告(2025)》(以下简称《报告》)正式发布。《报告》开篇即精准界定新质生产力的核心内涵:它是以创新
    的头像 发表于 11-11 09:36 863次阅读
    IPv6 筑牢新质<b class='flag-5'>生产力</b>网络底座

    工业数字化如何促进新质生产力发展

    工业数字化通过技术融合、数据驱动、模式创新和资源配置优化,全方位推动新质生产力发展,具体表现为以下四个核心维度: 一、技术融合:催生颠覆性创新,突破传统生产力边界 工业数字化以5G、人工智能、大数
    的头像 发表于 10-24 15:47 499次阅读

    如何评估电能质量在线监测装置的扩展性

    评估电能质量在线监测装置的扩展性,需围绕 “ 硬件扩展、软件升级、协议兼容、场景适配 ”
    的头像 发表于 10-22 16:35 749次阅读

    电能质量在线监测装置的兼容性和扩展性对其性能有何影响?

    电能质量在线监测装置的兼容性和扩展性,是决定其 “能否融入现有系统、适应未来变化” 的核心属性,直接影响装置的 数据互通性、功能适配性、生命周期价值 ,进而间接作用于谐波源识别准确率、定位精度等核心
    的头像 发表于 10-22 16:25 613次阅读

    华为中国行2025山西新质生产力大会成功举办

    以“数智世界 太行有为”为主题的华为中国行2025·山西新质生产力大会在长治市成功举办。政府领导、行业大咖及业界专家齐聚一堂,旨在通过政府、企业与技术提供方的多方合作,推动产业数智化转型升级,释放数据价值,为长治数字经济发展提供
    的头像 发表于 09-10 10:33 1413次阅读

    魔视智能入选2025汽车新质生产力优秀案例

    近日,2025汽车新质生产力优秀案例征集活动在重庆落下帷幕,优秀案例名单在2025汽车新质生产力发展论坛上正式发布。魔视智能《智能驾驶4D标注平台》凭借全方位4D数据综合解决方案的创新实践,成功入选 “2025 汽车新质生产力
    的头像 发表于 08-28 18:02 1550次阅读

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

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

    欧冶半导体入选2025汽车新质生产力优秀案例

    此前,7月30日至31日,由新华社中国经济信息社、中国检验认证集团主办的2025汽车新质生产力发展论坛在重庆举行。论坛期间,2025汽车新质生产力优秀案例名单正式对外发布。欧冶半导体凭借聚焦智能汽车
    的头像 发表于 08-05 17:24 1621次阅读

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

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

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

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

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

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

    科技云报到:瞄准企业级智能体,艺赛旗加速业务出海重塑数智生产力

    以AI为驱动释放数智生产力
    的头像 发表于 06-05 15:41 750次阅读
    科技云报到:瞄准企业级智能体,艺赛旗加速业务出海重塑数智<b class='flag-5'>生产力</b>

    飞凌嵌入式ElfBoard ELF 1板卡-Regmap的优势

    的读写操作,没有提供寄存器缓存功能。 四、扩展性:Regmap 提供了一个模块化的框架,可以轻松扩展支持更多的通信接口和寄存器映射类型。这
    发表于 05-22 10:39