- Today
- Total
내 머릿속 데이터베이스
폐쇄망에 Python 설치 및 외부 모듈 설치기 본문
폐쇄망에 python을 설치하면서 얻은 삽질기
서버엔 기존 2.7이 설치되어있었고, 특정 사용자만 3.4버전을 쓸 수 있게 홈디렉토리 밑에 설치하려고 하였다.
python.3.x.tar.gz 의 압축을 풀고 (with-threads는 스레드를 지원하는 옶션)
$ ./configure --prefix=/home/계정명/usr_bin/ --with-threads
$ make && make install
을 했다.
폐쇄망이라 Ignoring ensure pip failure: pip 7.1.2 requires SSL/TLS 라는 에러가 뜨며 PIP는 설치가 안된다.
~/usr_bin/bin/ 안에 python3 가 있는데, 편하도록 심볼릭 링크를 생성했다.
$ ln -s python3 py3
이를 쓰기 좋게 .bash_profile 이나 .profile에 사용자 path를 등록해두는 것이 좋다.
export PATH=$PATH:$HOME/usr_bin/bin
실행해보니 잘 된다.
외부모듈을 설치하기 위해 PIP는 사용불가. 직접 모듈을 받아서 수동으로 설치한다.
당당히 외부모듈을 압축 풀고 py3 setup.py install 을 했지만 에러 발생.
setuptools 에러가 난다.
이는 폐쇄망이라 easy_install이 설치되지 않았기때문.
직접 setuptools를 설치해야한다. (setuptools안에 easy_install 이 포함)
https://pypi.python.org/pypi/setuptools
위 경로에서 다운 받아서 압축 풀고 마찬가지로 py3 setup.py install 을 했지만 에러 발생.
이번엔 다음과 같은 에러가 난다
Compression requires the (missing) zlib module
zlib가 시스템에 설치되지 않은 것으로 zlib를 다운받는다. (http://www.zlib.net/)
압축 풀고 다음과 같이 설치한다. (이건 root권한으로 설치했다. sudo가 안됐으면 또 고생했겠지..)
$ ./configure
$ make && make install
그리고 다시 setuptools를 설치시도하였으나 계속 같은 에러 발생.
온갖 삽질을 했으나, http://jybaek.tistory.com/315 이곳에서 해답을 찾았다.
python을 다시 빌드하여 설치해야 한다는 것.
python 자체는 zlib가 없어도 설치되고 잘 작동하는데.. 사실은 python이 zlib에 의존적인가보다.
다시 파이썬을 설치하고, setuptools 를 설치하니 오류가 없다.
그 다음 외부 모듈을 py3 setup.py install 하니 설치가 잘 된다. 끝.