저는 Ubuntu 22.04를 실행 중이고 gcc-12 및 모든 관련 종속성(현재 버전 12.1.0-7)을 jammy-security에서 사용 가능한 최신 버전(12.1.0-2ubuntu1~22.04)으로 업데이트하려고 합니다. 시스템은 gcc-12가 이미 최신 버전이라고 주장합니다.
내가 아는 한, apt_preferences의 매뉴얼 페이지에 따르면 다음과 같습니다.
일반적인 경우 설치된 패키지 버전(우선순위 100)은 source.list(5) 파일에 나열된 소스에서 사용 가능한 버전(우선순위 500 또는 990)만큼 새로운 버전이 아닙니다. 그런 다음 apt-get install some-package 또는 apt-get upload가 실행되면 패키지가 업그레이드됩니다.
그러나 jammy-security가 현재 버전보다 핀 우선순위가 높음에도 불구하고 gcc-12 설치에서는 업그레이드를 거부합니다.
버전과 대상 저장소를 지정하여 강제로 업데이트할 수 있다는 것을 알고 있습니다.
sudo apt-get install gcc-12=12.1.0-2ubuntu1~22.04 -t jammy-security
하지만 모든 gcc-12의 종속성과 해당 종속성의 종속성에 대해 이 작업을 수행해야 합니다. 각 패키지를 개별적으로 업그레이드할 필요가 없는 수정 사항을 아는 사람이 있나요?
내 터미널 출력 중 일부는 다음과 같습니다.
sudo apt-get 설치
sudo apt-get install gcc-12
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
gcc-12 is already the newest version (12.1.0-7).
0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded.
적절한 캐시 정책 gcc-12
gcc-12:
Installed: 12.1.0-7
Candidate: 12.1.0-7
Version table:
*** 12.1.0-7 100
100 /var/lib/dpkg/status
12.1.0-2ubuntu1~22.04 500
500 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages
500 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages
12-20220319-1ubuntu1 500
500 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
/etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu jammy main universe restricted
deb http://security.ubuntu.com/ubuntu/ jammy-security main universe restricted
deb http://archive.ubuntu.com/ubuntu jammy-updates main universe restricted
답변1
제가 확인할 수 있는 한, 귀하의 gcc-12
패키지는 실제로 제공된 버전보다 최신 버전입니다. 12.1.0-7은 12.1.0-2ubuntu1~22.04보다 높은 버전입니다.jammy-security
apt
패키지를 다운그레이드하려면 해당 패키지를 1000보다 큰 우선순위로 고정해야 합니다. 보다Debian은 패키지를 현재 다운로드 가능한 버전으로 일괄 다운그레이드합니다.가능한 접근 방식 중 하나입니다.