Deepin App Store 从零到跑通:源码下载、依赖准备与编译安装全流程
Deepin App Store 从零到跑通源码下载、依赖准备与编译安装全流程【免费下载链接】deepin-appstore项目地址: https://gitcode.com/gh_mirrors/dee/deepin-appstoreDeepin App Store 是深度操作系统的官方应用商店客户端源码全开源。这篇教程带你走完源码下载、安装 DTK/Qt5 依赖、CMake 编译主程序与 Go 守护进程的完整路径一次把应用商店客户端跑起来适合初次接触该项目的开发者。谁开发了 Deepin App Store项目定位与代码结构这个项目由 linuxdeepin 团队维护是 Deepin 桌面环境里的应用分发入口用户搜应用、装.deb、批量升级、用 Deepin ID 提交评论全靠它。架构上比较典型——src/ 下是 C 写的 Qt5/DTK 主程序壳src/web/ 是 Angular 前端页面src/daemon/ 是一个通过 D-Bus 与 lastore-daemon 打交道的 Go 服务。搞清楚这三块后面配置构建选项就不懵了。源码获取与依赖项快速安装 先把代码拿下来仓库地址只有一个clone 完记得进目录git clone https://gitcode.com/gh_mirrors/dee/deepin-appstore.git cd deepin-appstore⚙️ 再装依赖。为什么提前装齐因为 src/CMakeLists.txt 里对 Qt5、DtkWidget、libqcef 全是REQUIRED缺一个 cmake 阶段就直接报错。完整依赖清单参考 debian/control 的 Build-Depends 段一键装好sudo apt install cmake pkg-config libdtkwidget-dev libdframeworkdbus-dev \ libqcef-dev libqt5webchannel5-dev libsass0 qttools5-dev-tools \ libqt5sql5-sqlite qttools5-dev golang-go nodejs python3-lxml⚠️ 两个高频坑libqcef-dev和libdframeworkdbus-dev只在 deepin-tools 源里提供Deepin 系统默认已启用其他发行版需要自己加源nodejs版本至少要 10前端构建用的是 Angular CLI太老的 node 会直接崩。CMake 构建命令主程序、前端与守护进程下面每步都有明确的产出物出问题时按产物定位。初始化子模块。src/web/vendor-deps是 web 依赖包主构建流程靠它提供node_modules不拉下来 npm 构建必挂git submodule update --init --recursive建独立构建目录避免产物混进源码树mkdir build cd build配置。-DUSE_SYSTEM_RESOURCESON让程序去系统目录找 web 资源和 debian/rules 官方打包配置保持一致装完即可用cmake .. -DCMAKE_BUILD_TYPERelease -DUSE_SYSTEM_RESOURCESON编译。Release 模式下这一步会连带产出前端 dist、Go 守护进程和桌面翻译耗时较长属正常make安装到系统路径同时落盘主程序、daemon 和 web 资源sudo make install一键构建脚本从 clone 到 install嫌步骤碎的话把下面内容存成项目根目录的build_and_install.shchmod x后直接执行即可它等价于上面全部操作#!/bin/bash set -e # 拉取 web 依赖子模块 git submodule update --init --recursive # 配置Release 模式 使用系统目录的 web 资源 mkdir -p build cd build cmake .. -DCMAKE_BUILD_TYPERelease -DUSE_SYSTEM_RESOURCESON # 并行编译前端 主程序 Go daemon make -j$(nproc) sudo make install echo done: deepin-appstore installed执行./build_and_install.sh。如果机器上 node 版本不达标、只想先跑通 C 壳可以加-DBUILD_WEB_RESOURCESOFF跳过前端构建。验证安装结果与下一步✅ 验证很简单确认二进制在 PATH 里然后直接拉起which deepin-appstore deepin-appstore界面能弹出说明主程序、web 资源和 daemon 链路基本打通了。还可以跑仓库自带的 D-Bus 测试脚本 test/test_settings.bash它会逐一查询守护进程的 Settings 接口全有返回值就是健康状态。接下来建议两条线走想看懂包管理逻辑读 docs/dpk.md 和 src/services/package/想盯发布节奏翻 CHANGELOG.md 了解当前版本在做什么。【免费下载链接】deepin-appstore项目地址: https://gitcode.com/gh_mirrors/dee/deepin-appstore创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考