由于deepin 没有最新的arm 估计也不在维护最后更新看是15年故有此文章
首先构建debian stretch系统
mkdir $ROOTFS_DIR
cd $ROOTFS_DIR
debootstrap --foreign --arch armhf stretch . http://ftp.sjtu.edu.cn/debian/
cp /usr/bin/qemu-arm-static usr/bin/
LC_ALL=C LANGUAGE=C LANG=C chroot . /debootstrap/debootstrap --second-stage
LC_ALL=C LANGUAGE=C LANG=C chroot . dpkg --configure -a
该过程需要一些时间,到此为止,Debian 基础系统已经配置好了;现在可以把 $ROOTFS_DIR 保存为一个
压缩包,以备日后之用
cd $WORK_DIR
tar zcvf debian-rootfs-armhf-clean.tar.gz ./debian
安装 locales 不然编译的时候不停的报 设置语言 问题
chroot . apt-get install locales
echo "en_US.UTF-8 UTF-8" > etc/locale.gen
echo "zh_CN.UTF-8 UTF-8" >> etc/locale.gen
chroot . locale-gen
我们首先要安装编译dde-kwin
经查询依赖deepin-desktop-base deepin-keyring gsettings-qt
dde-kwin 依赖
apt install \
debhelper qtbase5-dev qtbase5-private-dev \
libqt5x11extras5-dev libxcb1-dev \
libkf5globalaccel-dev \
libkf5windowsystem-dev \
libkf5coreaddons-dev \
kwin-dev \
libkf5config-dev \
libfontconfig1-dev \
libfreetype6-dev \
libglib2.0-dev \
libxrender-dev \
libmtdev-dev
libdtkcore-dev \ 自己编译
libgsettings-qt-dev \ 自己编译
---------------------------------
gsettings-qt
apt install \
debhelper \
libglib2.0-dev \
pkg-config \
pkg-kde-tools \
qml-module-qtquick2 \
qml-module-qttest \
qt5-qmake \
qtbase5-dev \
qtdeclarative5-dev \
qtdeclarative5-dev-tools \
xauth \
xvfb
dtkcore
debhelper (>= 9), pkg-config,
qttools5-dev-tools, qtbase5-private-dev,
libgsettings-qt-dev, deepin-desktop-base
编译结果得到 deb
deepin-desktop-base-2019.06.19 libdtkcore2_2.0.14_armhf.deb
deepin-desktop-base_2019.06.19_all.deb libdtkcore2-dbgsym_2.0.14_armhf.deb
deepin-desktop-base_2019.06.19_armhf.buildinfo libdtkcore-bin_2.0.14_armhf.deb
deepin-desktop-base_2019.06.19_armhf.changes libdtkcore-bin-dbgsym_2.0.14_armhf.deb
deepin-keyring_2017.02.14_all.deb libdtkcore-dev_2.0.14_armhf.deb
deepin-keyring_2017.02.14_armhf.buildinfo libgsettings-qt1_0.1+17.10.20170824_armhf.deb
deepin-keyring_2017.02.14_armhf.changes libgsettings-qt1-dbgsym_0.1+17.10.20170824_armhf.deb
deepin-keyring-2019.01.09 libgsettings-qt-dev_0.1+17.10.20170824_armhf.deb
deepin-keyring-udeb_2017.02.14_all.udeb qml-module-gsettings1.0_0.1+17.10.20170824_armhf.deb
dtkcore-2.0.14 qml-module-gsettings1.0-dbgsym_0.1+17.10.20170824_armhf.deb
使用 dpkg -i ./*.deb 安装 这是就可以编译 dde-kwin 了
编译之前提示缺少依赖
apt install libqt5x11extras5-dev libkf5globalaccel-dev libkf5windowsystem-dev libkf5coreaddons-dev kwin-dev libkf5config-dev libfontconfig1-dev libfreetype6-dev libxrender-dev libmtdev-dev
dpkg-buildpackage -b
安装完成 现在安装 编译 startdde
分析
startdde--->(运行时)dde-daemon -------dde-polkit-agent(需要重新编译安装)--libdtkwidget2 (>= 2.0.10)----需要qt 编译
(运行时)dde-kwin 需 qt新的 也就是编译
dde-qt5integration ---libdtkwidget2 (>= 2.0.11)----qt5dxcb-plugin
dde-api-dev(>> 3.16.0+),----deepin-gettext-tools (使用 backport 源可以安装)
首先编译dde api
安装 deepin-gettext-tools
添加源 deb http://ftp.sjtu.edu.cn/debian stretch-backports main
这里依赖了 go 环境 使用 qemu 编译不了 开始架设 真实的 arm 机器上进行编译
大家如果有兴趣 可以加入qq群 68674740 一起研究