简 述: 有人问,DTK 怎么配置开发环境? 我头上有呆毛了,,,又水一篇,确实没想到问的人会有这么多。

[TOC]


本文初发于 偕臧 https://xmuli.tech,同步转载于此。


准备

在官网下载 uniontechos-desktop-20-professional-1030-fix_amd64 镜像(或找测试小仙女们要一个最新的),常规装系统后,顺利进入到桌面;


开启开发者模式

进入 控制中心-通用-开发者模式-进入开发者模式,激活开发者模式成功后,重启系统;


配置DTK 开发环境

将第二行的 deb-src 的注释解开,更新源(若使用内网源,下载某些软件失败,记得换源),最后外网镜像默认自带的源如下

## Generated by deepin-installer
deb [by-hash=force] https://professional-packages.chinauos.com/desktop-professional eagle main contrib non-free
deb-src [by-hash=force] https://professional-packages.chinauos.com/desktop-professional eagle main contrib non-free

看了一下,默认 gcc = 4.8.3,无 g++ 、无 cmake、无 git

# 更新源
sudo apt update

# C++ 开发环境配置好了
sudo apt install qt5-default qtcreator cmake  g++ git 

# DTK 开发环境配置好了
sudo apt install libdtkwidget-dev libdtkgui-dev libdtkcore-dev 

验证

验证 C++ 开发环境 配置是否成功:

  • QtCreator ,创建一个空的 Qt 空项目,执行运行,发现 C++ 开发环境 配置成功。


验证 DTK 开发环境 配置是否成功:

  • 执行 git clone https://github.com/linuxdeepin/dtkcore.git, 下载源码

  • 进入文件夹 dtkcore, 执行 sudo apt build-dep dtkcore 生成依赖

  • 执行 sudo apt policy libdtkcore5,看到本机显示 libdtkcore5 为 5.4.0

  • 执行 git checkout 5.4.0 切换分支

  • QtCreator 打开 dtkwidget.pro, 点击编译运行,为 DTK 开发环境 配置成功。


验证其它项目

如验证 dtkwidget 开发项目,因为其依赖于 dtkcoredtkgui,所以推荐配置其对应的 tag 这三者是一致的(一般来说,都是各自最新也不会有什么问题,向下兼容很稳定了)。

dtkwidget 若是运行在虚拟机,若是内存仅 2G,会编译失败;调整为 >= 4G 即可;若是其它项目生成项目依赖,也都是如此。

sudo apt build-dep 项目名  # 生成项目依赖

比如 dtkwidget 运行后:


命令配置更新

为了便于配置 DTK 的开发环境,也可直接执行如下:

# deepin-sdk 为虚包,相当于安装 libdtkwidget-dev libdtkgui-dev libdtkcore-dev 
# 为自动生成 DTK 项目模板
sudo apt install deepin-sdk qtcreator-template-dtk

个人习惯

附上个人习惯的开发环境,可自行决定:

# gammaray: 安装 Qt 调试工具 
# flameshot: 安装截图工具
# com.notepadqq.notepadqq: 安装 notepadqq; "设置-首选项-外观"选择duotone-light
# gitg: git 可视化工具


# 商店里面安装讯飞输入法、typora、wps(或官网里面的)
sudo apt install gammaray flameshot com.notepadqq.notepadqq tree gitg

sudo apt source qt5-default    // qt源码包,此会安装在当前所处目录下,建议更换目录再执行

同时安装 dde-dock 网速插件: lfxspeedlfxNet


附:


系列地址:

QtExamples

欢迎 starfork 这个系列的 QT / DTK 学习,附学习由浅入深的目录。