Redian新闻
>
deepin宣布deepin DTK已完成基于Qt6的全面升级

deepin宣布deepin DTK已完成基于Qt6的全面升级

公众号新闻

出品 | OSC开源社区(ID:oschina2013)

近日,深度 deepin 宣布 deepin DTK(Development ToolKit)已正式适配 Qt6 (6.4.2),实现全面升级。

DTK 作为 deepin 基于 Qt 开发的一整套简单且实用的通用开发框架,处于 deepin 操作系统中的核心位置,此次成功适配意味着 deepin 操作系统后续将充分利用 Qt6 版本的新特性及新功能,在最大程度上为用户提供更先进、更高效的体验。

为什么要适配 Qt6

自 deepin 诞生以来,deepin 桌面操作系统就以简洁、直观和美观的外观,以及独特的操作方式引起了广泛关注。DTK 作为 deepin 操作系统的核心工具开发组件,不仅为用户提供了丰富的控件,而且具有强大的定制能力和高度可扩展性,为 deepin 桌面操作系统注入了独特的个性与魅力。因此,deepin 团队一直关注着 Qt 的变化。

Qt6 作为我们正在使用的开发工具包(SDK)的最新版本,不仅是 Qt5 版本的升级,更是一次从头开始的全面革新,不但加强了跨平台兼容性、改进了性能,同时引入了诸多新的功能及工具,如更强大的图形渲染、多线程支持等。

考虑到 Qt6 将成为未来几年中的主要版本,为确保应用程序在未来的发展中与最新技术保持同步,我们在 deepin V23 Beta 版本中,完成了 DTK 对 Qt6 (6.4.2) 的适配。

在此次适配 Qt6 后,开发者可直接在基于 Qt6 开发的项目上接入 DTK,无需单独对 Qt5 & DTK 进行二次适配,极大地减少了开发资源的重复和浪费。已在使用 Qt6 进行开发的应用也可以接入 DTK 框架进行深入开发更符合 DDE 样式的程序,兼顾性能的同时,美观依然在线。

适配问题及处理

  • API 变动

Qt6 对一些 API 进行了重大改动和调整,导致一些原有的代码需要进行修改和适配。于是我们对代码进行全面分析和重构,以确保其在 Qt6 和 Qt5 中的兼容性。

  • 存在的功能缺失

在 Qt6 中,由于技术和架构的变化,某些 Qt5 中存在的功能可能被删除、替代或者(暂时)禁用。这意味着我们需要找到替代的方式来实现相同的功能,或者重新设计和开发相关功能。

  • 第三方库和插件兼容性

Qt5 常常与其他第三方库和插件进行集成,但是这些库和插件可能并不完全兼容 Qt6。所以我们在适配 Qt6 时,对这些集成进行了评估和测试,并进行必要的修改和调整。如 qtxdg/QGSettings 还未完全适配 Qt6,因此在 Qt6 编译时暂时禁用 libqtxdg/QGSettings 相关代码。

  • 依赖项的更新

Qt6 通常会升级依赖的一些外部库和工具链,为满足 Qt6 的要求。于是我们主意升级和适配这些依赖项。

  • DTK6 的打包和版本管理的实现

在 DTK 适配完 Qt6 后,考虑到可维护性,我们并没有采用创建新分支的方式管理 DTK5 和 DTK6,二者使用同一套代码,DTK5 和 DTK6 将共存于系统中。

  • 接口适配

对于 Qt5 中已经标注废弃但还在用的接口,在适配 Qt6 时,我们直接将其删除,并使用可用的接口替换。对于一些不稳定的接口,如通过某些技术获取的一些 Qt 私有接口甚至私有变量,我们则通过对比 Qt5 和 Qt6 版本的源代码,根据功能逻辑找到变化后的接口,尽量使用 Qt6 公开的接口对其进行替换。

成果及未来规划

整个 Qt6 的适配过程中,总计有 1000+(1609)文件变动,代码新增 20000+ 行数,代码移除 10000+ 行数。

截至目前, deepin DTK 已完成 5 个版本迭代,100+ 次更新,累计提交代码近 20 万行,已被迁移至超过 10 个 Linux 发行版。

未来,我们也将与最新技术保持同步,进一步提升应用程序的稳定性。我们衷心希望这次适配能够为开发者和用户带来更先进、更高效的体验,也期待更多感兴趣的朋友加入我们,讨论更多内容,为推动生态发展贡献力量。

  • deepin-qt SIG 组入口:https://github.com/deepin-community/sig-deepin-qt/issues

  • DTK 项目入口:https://github.com/linuxdeepin/dtk

相关链接:https://www.deepin.org/zh/2023-9-7/


往期推荐



Meta正在构建新开源大模型,性能超越Llama 2、比肩GPT-4
Bun发布1.0正式版本,Zig编写的高性能 “全家桶”JavaScript运行时
Mojo编程语言开放下载,声称比Python快68000倍



这里有最新开源资讯、软件更新、技术干货等内容

点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
《歌德堡变奏曲1349》生物制药公司Biogen宣布裁员1000人最新!上海落户政策全面升级,这几类留学生被撤销落户资格!Qt 6.6正式发布,引入新模块Qt Graphs大模型爆发!百度智能云千帆2.0全面升级,讯飞星火正式开放小米14提前亮相?!全面升级「无短板」,还加入一款“高端机”...这次真香!GIMP最新开发版已完成GTK3移植周末灌水:Love Bombing金融巨头 | HSBC(UK)2024 Spring Week已开启, 低年级学生可投由中国人实际控制的SPAC:Mars Acquisition宣布与标的企业合并,估值1.5亿美金GPT-4完成正确率仅6%!北大等提出首个「多轮、多模态」PPT任务完成基准PPTC八大投行 | J.P.Morgan 2024 Spring Week已开,直通2025暑期实习鸿蒙生态千帆起,华为游戏中心赋能产业全面升级深度操作系统 deepin 宣布 DTK 开发框架已完成基于 Qt6 的全面升级八大投行|UBS 2024 Spring Week已开启,低年级学生可投苹果iPad史上最大大大升级!外观性能全面升级,领先安卓阵营...发数全面升级的新一期超声炮万人团来了!2xxx拼手速!八大投行 | BoA (UK) 2024 Spring week已开,直通2025暑期实习波士顿生物制药公司Biogen宣布裁员1000人,新药上市在即...BK已婚男出轨女同事!不甘被分手跑到皇后区放火 妻好心提醒情妇白头老翁在,闲坐说秦刚英诺达发布DFT静态验证工具,提高IC设计质量及可靠性市府捐助 法拉盛图书馆青少年中心全面升级重新开放为什么家人信息是国家机密CS迎来了全面升级,但有玩家说它是狗屎游戏PS+AI生图一步完成,效果惊人!Adobe Firefly 2重磅更新:模型全面升级,矢量图完美支持[9月26日]科学历史上的今天——金·赫尔尼(Jean Amédée Hoerni)Google DeepMind 宣布基于 LLM 的机器人控制器 RT-2一加数字Pro系列机型或回归,一加12将全面升级36氪政府服务全面升级,助推产业破局发展全网首发!UC Berkeley发布Data专业必看书单,这10本太猛了NVIDIA全面升级Omniverse,扩展OpenUSD生态系统正式升级!“澳国立中国英才计划”全面升级为2.0——“澳”立职场后院日记(五)北大硕士RLHF实践,基于DeepSpeed-Chat成功训练上自己的模型
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。