다음을 수행하여 패키지를 설치할 특정 버전을 지정할 수 있습니다 apt-get install pkg=version
.
하지만 최소 버전을 지정할 수 있나요?
예를 들어, 최소한 gcc 8을 원하지만 gcc 9를 사용할 수 있습니다.
다음과 같은 것(분명히 작동하지 않습니다):apt-get install pkg>=version
답변1
Sice apt 1.9(2019년 6월 17일 출시)에서 다음을 사용할 수 있습니다 apt(-get) satisfy
.
sudo apt-get satisfy "foo (>= 1.0), bar (>= 2.0)"
종속성 문자열 구문은 아래에 설명되어 있습니다.
https://www.debian.org/doc/debian-policy/ch-relationships.html#syntax-of-relationship-fields
답변2
apt
패키지에 대한 옵션을 사용하면 사용자가 apt
알려진 패키지의 다양한 버전 중에서 선택할 수 있습니다. 일반 패키지 제약 조건을 지정할 수는 없습니다.
원하는 것을 달성하는 가장 쉬운 방법은 equivs
다음을 사용하여 파일에 작성하는 것 입니다 mingcc
.
Section: devel
Priority: optional
Standards-Version: 4.5.0
Package: gcc-8-or-later
Depends: gcc (>= 4:8)
Description: dependency package ensuring GCC 8 or later is installed
This meta-package ensures that GCC 8 or later is installed.
그런 다음 패키지를 빌드합니다.
equivs-build mingcc
이는 gcc-8-or-later_1.0_all.deb
현재 디렉토리에 있거나 $TMP
다음을 사용하여 설치할 수 있습니다 apt
.
apt install ./gcc-8-or-later_1.0_all.deb
설치는 GCC 8 이상을 사용할 수 있는 경우에만 작동합니다.
( gcc
Debian과 Ubuntu의 메타 패키지는 현재 4세대인 epoch를 사용합니다 >= 4:8
.)