如何在Jammy系统获取Buster版本的build-essential及其依赖?
解决Jammy系统获取Debian Buster版build-essential的问题
1. 确保Buster源配置正确并添加优先级控制
首先检查你添加的Buster源格式是否正确,比如在/etc/apt/sources.list中添加:
deb http://deb.debian.org/debian buster main contrib non-free
为避免Buster源干扰系统默认的Jammy包,创建apt优先级配置文件/etc/apt/preferences.d/buster-pin,内容如下:
Package: * Pin: release n=buster Pin-Priority: 10
执行更新缓存命令:
sudo apt update
2. 查询Buster版build-essential的准确版本
使用以下命令查看所有可用源中build-essential的版本,找到Buster对应的版本号:
sudo apt-cache madison build-essential
输出会类似:
build-essential | 12.6+buster1 | http://deb.debian.org/debian buster/main amd64 Packages
这里的12.6+buster1就是Buster版的准确版本号(注意不是你之前尝试的12.6)。
也可以用apt-cache policy build-essential查看更详细的版本分布:
sudo apt-cache policy build-essential
3. 下载指定版本的包及依赖
使用apt-get或aptitude的--download-only选项下载目标版本及依赖,以下载版本12.6+buster1为例:
sudo apt-get --download-only install build-essential=12.6+buster1
或者用aptitude:
sudo aptitude --download-only install build-essential=12.6+buster1
下载的deb包会保存在/var/cache/apt/archives/目录下,可直接从该目录提取所需文件。
注意:如果遇到依赖版本冲突,需要同时指定依赖包的Buster版本,例如若依赖gcc,可添加
gcc=<buster版gcc版本号>到安装命令中,同样通过apt-cache madison gcc查询对应版本。
内容的提问来源于stack exchange,提问作者Sblu
相关产品推荐
相关产品推荐

