2023년 3월 5일 일요일

우분투 파이썬 패키지 버전 의존성 불일치 문제 해결 방법

이 글은 우분투 파이썬 패키지 버전 의존성 불일치 문제 해결 방법을 간략히 정리한다.

패키지 버전 디펜던시(의존성) 에러

우분투에서 개발하다보면, 여러 패키지 간 버전이 일치하지 않아, import가 실패하는 경우가 빈번히 발생한다. 특히, 오픈소스를 github에서 다운받아 사용할 경우, 사용된 패키지 버전이 명시되지 않았을 때는 직접 해당 버전을 탐색해 설치해야 한다.

의존성 에러

이 경우, 원하는 패키지 버전을 탐색하기 위해서는 pip package history를 확인해야 한다. 서로 유사한 패키지 릴리즈 시점의 버전을 찾는다.

패키지 버전 히스토리

그리고, 다음과 같이 버전을 명시해 설치하도록 한다.

pip install torch==1.10.1 torchvision==0.11.2 torchautdio==0.10.1

pip install scikit-learn matplotlib yacs timm==0.4.9

참고로 본인이 개발한 프로그램은 virtualenv, docker 등을 통해 개발환경을 반듯이 가상화해야 개발팀 전체가 사용할 때 문제가 없다. 아울러, 개발된 프로그램의 패키지 버전도 pip freeze로 기록해 놓는 습관을 가지는 것이 좋다.

참고

댓글 없음:

댓글 쓰기