从零构建deepin armhf系统(一)

由于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 一起研究

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值