본문 바로가기

프로그래밍/Python

[PYTHON|PIP] pip 설치 에러 unable to find vcvarsall.bat

반응형

pip 로 설치하다보면, 종종 패키지를 설치하면서 컴파일이 필요하여 에러가 발생하는 경우가 있습니다.

그런 경우에는 vc 컴파일러가 설치되어 있으면 컴파일이 진행되며 설치되지만, 컴파일러가 없는 경우 대략 아래와 같은 오류가 발생하게 됩니다.

    creating build\lib.win32-2.7\vpython\data
    copying vpython\data\glow.2.1.min.js -> build\lib.win32-2.7\vpython\data
    copying vpython\data\glowcomm.js -> build\lib.win32-2.7\vpython\data
    copying vpython\data\jquery-ui.custom.min.js -> build\lib.win32-2.7\vpython\data
    copying vpython\data\pako.min.js -> build\lib.win32-2.7\vpython\data
    copying vpython\data\pako_deflate.min.js -> build\lib.win32-2.7\vpython\data
    copying vpython\data\pako_inflate.min.js -> build\lib.win32-2.7\vpython\data
    running build_ext
    building 'vpython.cyvector' extension
    error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27

위 에러메시지는 pip install vpython 을 하였을 때 발생한 것입니다.

이런 문제를 해결하기 위해 맘씨 좋은 사람이 윈도우에서 컴파일이 된 패키지를 웹에 올려두고 관리해 주고 있습니다. 아래 url 에 접속하여, 필요한 패키지를 ctrl-F 로 검색하고 다운받아 설치하면 됩니다.


위 예시 에러메시지의 경우에는 문제가 되는 vpython 패키지 whl 파일을, 자신 시스템에 설치된 파이썬의 버전과 비트수에 맞는 것을 다운받아서 설치하면 됩니다.

설치방법은 인자로 패키지명이 아닌 다운받은 파일명을 주는 것만 다르고, 동일합니다. ( whil 파일을 설치하기 위하여 pip 자체를 최신으로 업데이트하라는 메시지가 나올 수 있습니다,)

pip install <다운받은 whl 파일명>

예를 들면

pip instlal vpython-5.74-cp34-none-win_amd64.whl

이고, 이것은 64비트(amd64) 파이썬 3.4 (cp34) 용의 vpython 패키지를 설치하는 것입니다.

여담으로, 이런 패키지를 자동으로 받아 설치해 주는 pipwin 이라는 파이썬 패키지도 있습니다. 다만, 2018년 7월 현재 패키지가 정상적으로 동작하고 있지는 않습니다. 조금 지나서 문제가 수정된다면, pipwin 패키지만 깔고, pipwin 을 pip 처럼 사용하여 더 간편하게 설치가 가능할 것입니다. 2018년 현재 pipwin 패키지가 아주 잘 동작합니다.

pip install pipwin
pipwin install vpython

과 같이 간단하게 설치할 수 있습니다.


728x90