[DTK] 终于将QT6的DDE样式带回了UOS/V20,另附上最新编译的PDF4QT
Tofloor
poster avatar
kero990
deepin
2026-04-14 14:42
Author

自从我找到了能在UOS和deepinV20的QT6以来,我一直在将各种QT6应用编译适配到UOS上。唯一的问题是,没法适配DDE桌面的样式,只能使用QT默认的xcb样式,当然,能用是能用,就是丑。

这周下了点功夫,将dde样式的相关库编译了一遍,其中也有不少坑,而且有些干脆就是deepin代码写的烂。不过不管怎么样,现在是成功了,所有QT6应用即使是在UOS上也有标准DDE样式了。

放几张图大家看看,用的是最新编译的PDF4QT,算是linux上最强大的开源PDF编辑器,不过这玩意似乎对中文PDF支持不佳,这导致实用性骤降。不过我还是打算推商店的。

以下是所有要用到的库,暂时还只编译了arm64,x64等我有时间吧

tree
.
├── lib
│   ├── libdtk6core.so.6
│   ├── libdtk6gui.so.6
│   ├── libdtk6log.so.0
│   ├── libdtk6widget.so.6
│   ├── libfreeimage.so.3
│   └── libspdlog.so.1.17
└── plugins
    ├── iconengines
    │   ├── libdicon.so
    │   └── libdsvgicon.so
    ├── imageformats
    │   ├── libdci.so
    │   └── libdsvg.so
    ├── platforms
    │   └── libdxcb.so
    ├── platformthemes
    │   └── libqdeepin.so
    └── styles
        └── libchameleon.so

而默认的qxcb是这个丑样子

Reply Favorite View the author
All Replies
avatar
sammy-621
deepin
2026-04-14 15:06
#1

DTK能在V25下编译通过吗?对Qt环境有啥要求,就是在V25环境下,安装Qt 6开发环境,能编译DTK吗?

Reply View the author
avatar
神末shenmo
deepin
Spark-App
Q&A Team
2026-04-14 15:33
#2

bpo仙人!受我一拜!


虽然如果是我就换容器安装了like

Reply View the author
avatar
MeGusta
deepin
2026-04-14 15:48
#3

说到PDF4QT,我的新版QGIS(QT6)编译的时候有一个可选功能,就是将地图导出到pdf时,可以选择将PDF4QT作为生成pdf的后端。但是不知道为什么,样式一多的话,导出的速度就很慢。

Reply View the author
avatar
kero990
deepin
2026-04-15 09:26
#4
sammy-621

DTK能在V25下编译通过吗?对Qt环境有啥要求,就是在V25环境下,安装Qt 6开发环境,能编译DTK吗?

我不太理解为啥你在V25上还要编译DTK,因为deepin系统显然是带着DTK环境的,库里应该也有dtk6的开发包,从头编译的意义是啥呢?

我搞这玩意是因为v20上没有qt6,自然也没有dtk6,只有5,所以我需要6就得编译。

Reply View the author
avatar
kero990
deepin
2026-04-15 09:32
#5
神末shenmo

bpo仙人!受我一拜!


虽然如果是我就换容器安装了like

搞原生给了我很多乐趣,特别是有了qt6之后还有不少成就感(虽然qt6并不是我搞出来的,作者还停更了导致停在6.8.3)

当然我个人也不喜欢容器。snap,flatpak,appimage都不太喜欢。

另一方面是,统信并没有真正把容器包带到旧系统来,玲珑也没有自带,snap和flatpak装起来都有坑要踩。

对于茫茫多预装UOS的政企用户来说,商店原生是他们唯一的选择。

就微信4.0发布多久了,我们单位一半人都还在用旧的网页微信或者wine微信。因为他们系统留在1030,要从商店装微信,要先把系统升级到1070,才能把商店升到新版,才能安装微信。而uos旧系统还有备份失败无法升级的问题。这对于这些用户是无法逾越的天堑。

我不知道你的星火还能不能在1030安装,就算能,还能坚持多久。历史包袱太重就是这样的。

Reply View the author
avatar
sammy-621
deepin
2026-04-15 09:35
#6
kero990

我不太理解为啥你在V25上还要编译DTK,因为deepin系统显然是带着DTK环境的,库里应该也有dtk6的开发包,从头编译的意义是啥呢?

我搞这玩意是因为v20上没有qt6,自然也没有dtk6,只有5,所以我需要6就得编译。

如果要在V25上开发Deepin 风格的应用,应该使用何种框架,如何从0开始?如果官方有个比较明确的文档/demo,我的疑问应该可以解

Reply View the author