source

pip은 사용자 지정 버전 대신 잘못된 캐시 패키지 버전을 사용합니다.

gigabyte 2022. 10. 19. 21:07
반응형

pip은 사용자 지정 버전 대신 잘못된 캐시 패키지 버전을 사용합니다.

구체적으로 psycopg2 v2.4.1을 설치해야 합니다.잘못했습니다.

 pip install psycopg2

대신:

 pip install psycopg2==2.4.1

그러면 이전 버전이 아닌 2.4.4가 설치됩니다.

이제 pip uninstall psycopg2를 제거하고 올바른 버전으로 재설치하려고 해도 pip이 처음 다운로드한 캐시를 다시 사용하고 있는 것 같습니다.

다운로드 캐시를 지우고 명령어에 포함된 특정 버전을 사용하도록 pip을 강제하려면 어떻게 해야 합니까?

pip 6.0 이후를 사용하고 있는 경우는,--no-cache-diroption(소스).

pip 6.0보다 오래된 pip을 사용하는 경우 를 사용하여 업그레이드합니다.pip install -U pip.

시스템에 적합한 캐시 디렉토리를 클리어합니다.

Linux 및 Unix

~/.cache/pip  # and it respects the XDG_CACHE_HOME directory.

OS X

~/Library/Caches/pip

창문들

%LocalAppData%\pip\Cache

갱신하다

pip 이후에서는 명령줄에 다음과 같이 입력하면 운영 체제의 전체 경로를 쉽게 찾을 수 있습니다.

pip cache dir

Ubuntu 설치 출력 예:

➜ pip3 cache dir
/home/tawanda/.cache/pip

pip 20.1 이후에서는 다음 작업을 수행할 수 있습니다.

  • pip cache remove matplotlib: matplotlib와 관련된 모든 휠 파일을 pip 캐시에서 제거합니다.
  • pip cache purge: pip의 캐시에서 모든 휠 파일을 지웁니다.
  • pip cache dir: 캐시의 위치를 가져옵니다.

어떤 이유로 pip 캐시를 사용하지 않는 경우(공식 문서에 따르면 이는 잘못된 생각) 옵션은 다음과 같습니다.

  • pip install --no-cache-dir <package>: 캐시를 사용하지 않고 패키지를 설치합니다.
  • pip config set global.no-cache-dir false: (모든 명령에서) 캐시를 사용하지 않도록 pip을 설정합니다.

이 질문에 관한 이력(pip maintainer hat을 사용):

질문에서 언급된 "캐싱으로 인해 잘못된 버전 설치" 문제는 2013년 pip 1.4에서 해결되었습니다.

빌드 디렉토리의 청소와 재사용에 관한 많은 문제를 해결합니다.(#413, #709, #634, #602, #939, #865, #948)

6.0 페이지 이후(2014년!)pip install,pip download그리고.pip wheel캐시를 사용하지 않도록 명령어를 지정할 수 있습니다.--no-cache-dir선택.(예:pip install --no-cache-dir <package>)

그땐, 그래, 지나갔지--no-cache-dir이 버그를 회피할 수 있는 유일한 옵션입니다.이 검색 결과가 "pip cache remove"의 상위 검색 결과인 것은 유감입니다.:)

pip 10.0(2018년 이전!)부터 캐시를 항상 무시하도록 pip을 구성하는 데 사용할 수 있는 명령어가 추가되었습니다.이는 항상 관련 파일을 수동으로 편집함으로써 가능했지만, 이 기능을 명령줄로 표현했습니다.pip의 구성 메커니즘에 대한 자세한 내용은 여기를 참조하십시오.

pip 20.1 이후 pip에는 pip 캐시의 내용을 관리하는 명령어가 있습니다.

https://pip.pypa.io/en/latest/reference/pip_install.html#caching에 있는 매뉴얼에서 다음 문서를 참조하십시오.

v6.0 이후 pip은 웹 브라우저와 유사하게 작동하는 기본 캐시를 제공합니다.캐시가 기본적으로 켜져 있고 기본적으로 올바른 작업을 수행하도록 설계되어 있으면 캐시를 비활성화하고 항상 PyPI에 액세스할 수 있습니다.--no-cache-dir선택.

pip은 캐시를 무시하는 패키지를 설치할 수 있습니다.

pip --no-cache-dir install scipy

pip 20.1b1이 2020년 4월 21일에 출시되어 "추가"된 이후pip cachepip의 휠 캐시를 검사/검출하기 위한 명령어"는 다음 명령을 실행할 수 있습니다.

pip cache purge

레퍼런스 가이드는 다음과 같습니다.
https://pip.pypa.io/en/stable/reference/pip_cache/
해당하는 풀 요청은 여기에 있습니다.

Ubuntu에서는 삭제해야 했습니다./tmp/pip-build-root.

를 설정하는 경우는,--no-cache-dir기본적으로는 pip.conf에 넣을 수 있습니다.

[global]
no-cache-dir = false

1: 혼란스럽지만,no-cache-dir실제로 설정할 필요가 있는 옵션false나한테 묻는다면 꽤 바보같은...원래 그런 거예요.이 문제를 해결하기 위한 github 문제가 있습니다.

2: 장소pip.confOS에 따라 다릅니다.상세한 것에 대하여는, 메뉴얼을 참조해 주세요.

방금 비슷한 문제가 있었는데 패키지를 업그레이드하기 위해 pip을 얻는 유일한 방법은 pip을 삭제하는 것이었습니다.$PWD/build(%CD%\build이전에 완료되지 않은 설치 또는 이전 버전의 pip에서 남겨졌을 수 있는 디렉토리(설치 성공 후 빌드 디렉토리가 삭제됩니다).

archlinux pip 캐시는 ~/.cache/pip에 있습니다.이 캐시에 있는 http 폴더를 삭제하면 문제를 해결할 수 있습니다.

Mac에서 캐시 디렉토리를 삭제해야 했습니다.~/Library/Caches/pip/

간단하게

rm -d -r "$(pip cache dir)"

Windows 7 에서는, 삭제가 필요했습니다.%HOMEPATH%/pip.

virtualenv를 사용하는 경우build디렉토리 루트 아래에 있습니다.

Windows 7에서 %TEMP%\pip-build를 삭제해야 했습니다.

(pyvenv.d) jdoe$ pip --version       # pip version for this answer (or newer).
pip 21.1.1

(pyvenv.d) jdoe$ pip cache --help    # Review all options available to you.

(pyvenv.d) jdoe$ pip cache dir       # Cache-directory for pip(1).
/home/jdoe/.cache/pip

(pyvenv.d) jdoe$ pip cache purge     # Purge cache-directory (by example).
Files removed: 621                   # If cache-directory is already empty, the
                                     # output will be: "ERROR: No matching packages".


Mac OS(Mavericks)에서는 삭제해야 했습니다./tmp/pip-build/

캐시를 삭제하고 재구축하는 것이 더 좋은 방법입니다.이와 같이 다른 virtualenv에 다시 설치하면 설치할 때마다 캐시를 빌드하는 대신 캐시를 사용합니다.

예를 들어 설치 시 캐시된 휠을 사용한다고 표시됩니다.

Processing <some_prefix>/Library/Caches/pip/wheels/d0/c4/e4/e49fd07bca8dda00dd6b4bbc606aa05a25aacb00d45747a47a/horovod-0.19.3-cp37-cp37m-macosx_10_9_x86_64.wh

해당 파일을 삭제하고 설치를 다시 시작하십시오.

(...) pip이 캐시를 재사용하고 있는 것 같습니다(...).

그런 일은 일어나지 않을 거라고 확신해요.캐시가 아닌 빌드 디렉토리를 잘못 재사용하는 데 사용되는 pip입니다.는 2013-07-23에 출시된 pip 버전 1.4에서 수정되었습니다.

언급URL : https://stackoverflow.com/questions/9510474/pip-uses-incorrect-cached-package-version-instead-of-the-user-specified-version

반응형