当前位置: 首页 > news >正文

Linux系统下使用apt下载系统组件对应版本的源码

前言:在Linux操作系统端进行软硬件适配时,某些场景需要对系统已有的程序组件进行修改与编译,但许多开源的操作系统对关键程序组件进行开源维护时因为一定的原因并未直接在github等平台完全开源,如github上开源的版本与系统端使用的程序组件版本并不一致,这将对软硬件的有效适配造成一定的困扰。

实例举例:版本号为1070的统信UOS操作系统上的控制中心(dde-control-center)使用的版本为5.7.36.4-1,可以使用apt list dde-control-center命令查看,具体如下:

uos@uos-PC:~$ apt list dde-control-center
正在列表... 完成
dde-control-center/未知,now 5.7.36.4-1 amd64 [已安装]
dde-control-center/未知 5.7.36.4-1 i386

 控制中心dde-control-center为统信UOS系统的开源程序,开源于github,开源地址为:linuxdeepin/dde-control-center: Control panel of Deepin Desktop Environment. 

开源仓库中更新了多个版本,但并没有发现UOS1070系统端所对应的版本,具体如下:

解决方法:使用apt source命令在deb-src源下载源码,若对应的程序组件在deb-src源上开源的话(不理解deb-src上为啥有版本号对应的源码版本,有博友知道原因的话请告知【手动拱手】),可以下载到与当前系统程序组件所对应版本的源码,操作流程如下:

1、首先确保deb-src源已经启用,未启用状态下使用apt source命令会有相应提示~E: 您必须在 sources.list 中指定代码源(deb-src) URI,按照提示对/etc/apt/sources.txt中deb-src源解注释即可,具体如下:

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

2、使用apt source下载对应包

# 使用apt source下载指定程序源码(必须指定程序全名)
apt source <program-full-name># 以下载dde-control-center源码为例
# 正确用法--指定程序全名
apt source dde-control-center # 下载完成后,使用ls -l即可看到所对应的源码
uos@uos-PC:/home/uos/Downloads/dde-control-center-source$ ls -l
总用量 23028
drwxr-xr-x 21 sdt sdt     4096 7月  24 16:34 dde-control-center-5.7.36.4
-rw-r--r--  1 sdt sdt    12852 1月   9  2025 dde-control-center_5.7.36.4-1.debian.tar.xz
-rw-r--r--  1 sdt sdt     1686 1月   9  2025 dde-control-center_5.7.36.4-1.dsc
-rw-r--r--  1 sdt sdt 23552644 1月   9  2025 dde-control-center_5.7.36.4.orig.tar.xz# --------------------------------------------------------------------------
# 注意:apt source与apt list命令不同,不能像apt list那样使用字符*进行模式匹配检索
# 错误用法--使用字符*匹配()
apt source dde-control*
# --------------------------------------------------------------------------
http://www.dtcms.com/a/296607.html

相关文章:

  • 训练日志7.23
  • k8s常用命令介绍
  • 飞腾D3000PBF和UBOOT配置说明
  • Android15或AndroidU广播的发送流程
  • 阿里云ECS坑之dnf-makecache系统软件更新检测服务
  • Java面试宝典:Spring专题二
  • Access开发一键删除Excel指定工作表
  • Golang实现 - 实现只有表头的 Excel 模板,并在指定列添加了下拉框功能。生成的 Excel 文件在打开时,指定列的单元格会显示下拉选项
  • 笔记/使用Excel进行财务预测
  • 【超完整图文】在 Ubuntu 环境下安装 Qt Creator 4.7.0(较旧版本)
  • 亿级流量短剧平台架构演进:高并发场景下的微服务设计与性能调优
  • IP 证书全面解析:功能、类型与申请指南
  • 神经网络实战案例:用户情感分析模型
  • iview 部分用法
  • PyTorch常用Tensor形状变换函数详解
  • Spring中的循环依赖:解密、破局与架构启示
  • 第21章 常用的用户调查分析方法
  • 08 rk3568 模拟smi mdio RTL8367RB
  • 详解FreeRTOS开发过程(五)-- 系统内核控制函数及任务相关API函数
  • 遥感滑坡识别分割数据集labelme格式1893张1类别
  • 【java计算日期属于本月第几周通用方法】
  • 用生成模型解开视网膜图像的表征|文献速递-医学影像算法文献分享
  • 黄山派lvgl8学习笔记(3)导入陀螺仪传感器数据
  • 解决VSCode中“#include错误,请更新includePath“问题
  • 深度分析Java内存结构
  • 基础NLP | 01 机器学习 深度学习基础介绍
  • JavaScript 文件在页面渲染中的加载机制详解
  • CF每日5题(1500-1600)
  • Unity3D + VR头显 × RTSP|RTMP播放器:构建沉浸式远程诊疗系统的技术实践
  • Springboot宠物用品商城的设计与实现