apt는 최신 버전의 패키지 설치를 거부합니다.

apt는 최신 버전의 패키지 설치를 거부합니다.

Python 3.9를 설치하려고 하는데 Debian에는 3.7이 함께 제공됩니다.

을 실행하면 sudo apt install python3.9다음 메시지가 나타납니다.

E: Unable to locate package python3.9
E: Couldn't find any package by glob 'python3.9'
E: Couldn't find any package by regex 'python3.9'

내가 실행하면 sudo apt install python3다음과 같은 결과를 얻습니다.

python3 is already the newest version (3.7.3-1).

나는 수동으로 가서 데비안 서버에 실제로 Python 3.9가 있다는 것을 발견했습니다. 위치해있습니다여기.

deb그런 다음 Python 3.9 파일을 다운로드하여 실행했는데 sudo apt install ./python3.9*결과는 다음과 같습니다.

Note, selecting 'python3.9' instead of './python3.9_3.9.6-1_i386.deb'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 python3.9 : Depends: python3.9-minimal (= 3.9.6-1) but it is not installable
             Depends: libpython3.9-stdlib (= 3.9.6-1) but it is not installable
E: Unable to correct problems, you have held broken packages.

그런 다음 두 파일을 모두 다운로드 deb하고 동일하게 시도했지만 "제거 가능한" 종속성이 더 많아졌습니다.

내가 실행 중인 Debian 버전에 맞게 구성되지 않은 패키지는 설치할 수 없다는 것을 알고 있지만 Python 3.9를 설치할 수 있는 방법이 있습니까? 소스에서 빌드하지 않고 설치할 수 있는 방법이 있나요?

저는 busteri386(32비트) 아키텍처를 갖춘 Debian 10.10()을 실행하고 있습니다.

내 소스 목록(호주 미러를 사용하고 있습니다):

deb http://ftp.au.debian.org/debian/ buster main
deb-src http://ftp.au.debian.org/debian/ buster main

deb http://ftp.au.debian.org/debian/ buster/updates main
deb-src http://ftp.au.debian.org/debian/ buster/updates main

# buster-updates, previously known as 'volatile'
# deb http://ftp.au.debian.org/debian/ buster-updates main
# deb-src http://ftp.au.debian.org/debian/ buster-updates main

답변1

에서 볼 수 있습니다데비안 추적기저것:

  • 데비안 9( stretch/ oldstable)는 3.5.3과 함께 출시되었습니다.
  • 데비안 10( buster/ stable)은 3.7.3과 함께 제공됩니다.
  • 데비안 11( bullseye/ testing)은 3.9.2와 함께 출시됩니다
  • experimental3.9.4가 있습니다
  • python3다음에는 사용할 수 없습니다.stable-backports

bullseye몇 주 후에 출시될 예정입니다. dist-upgrade을 실행하면 bullseyepython3.9를 얻게 됩니다. 이것이 당신이 할 수 있는 가장 안전한 일입니다.

experimental당신의 패키지에 추가할 수 있지만 souces.list매우 sudo apt install -t experimental python3핵심적인 패키지를 교체하고 있으며 일이 제대로 진행되지 않으면 다소 위험할 수 있습니다.

또한 참고: Debian 10을 사용하는 경우 모든 기본 패키지는 python3.7에서 작동합니다. Python 코드를 직접 작성하고 특별히 새 버전에서 제공되는 기능을 사용하려는 경우가 아니면 업그레이드할 이유가 거의 없습니다. 패키지 에 의존하는 경우 pip대부분은 python3-<pkg>Debian 10의 python3.7에서 작동합니다.

답변2

시스템 Python을 비표준 버전으로 교체하는 것은 매우 나쁜 생각이며 시스템이 손상될 가능성이 높습니다. 최신 Python을 얻으려면 전체 시스템을 업그레이드하거나 다른 디렉토리에 별도의 Python을 설치하는 것이 좋습니다.

다른 버전의 Python이 필요한 경우 시스템 Python을 교체하는 대신 홈 디렉터리에 anaconda와 같은 것을 설치하는 것을 고려해야 합니다.

그러나 이로 인해 여러 Python 버전을 사용할 수 있다는 문제가 발생하므로 항상 예상하는 Python을 실행하도록 주의해야 합니다.

관련 정보