2016년 4월 15일 금요일

TensorFlow - CentOS 6.X 구버전에 설치기

TensorFlow는 CentOS 7 최신 버전에서는 그나마 쉽게 설치가 된다. 하지만, CentOS 6 후반 버전에서는 Dependency 모듈 버전 업 해줄게 많아 설치가 좀 귀찮은 작업들이 수반된다.TT

그래서, 누군가가 CentOS 6.X 에 TensorFlow를 설치한다고 한다면, 만약 테스트 목적이라면, Docker 를 쓰거나 Python 의 Virtualenv를 쓰라고 권장하고 싶다. 그렇지 않고, 실제 머신에 Fully 깔고자 한다면, CentOS 6.X 는 과감하게 포맷하고 OS 부터 버전업 하라고 권하고 싶다.

여튼 메모해놓은 내용을 정리해 보았다.
  1. Python 환경 정비
    1. 기본 설치 버전 확인
      1. python -V 로 버전 확인. TensorFlow는 2.7 이나 3.3이상의 Python 이 필요함.
      2. 버전이 낮은 경우 설치.(아래는 2.7 기준)
        1. sudo yum install gcc
        2. 소스로 깔자!. 2.X 의 최신버전은 2.7.11이넹.
        3. wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
        4. tar xvzf Python-2.7.11.tgz
        5. cd Python-2.7.11
        6. ./configure
        7. 구버전 Overwrite 방지하면서...
          1. sudo make altinstall
        8. 잘 설치 되었나 확인
          1. python2.7 -V
          2. python -V
            1. 아직 python 컴멘드는 옛날 버전으로 연결 됨.
      3. python 구 버전 dependancy 완전 없애고 Gracefully 하게 update 하기.(CentOS 7.1 기준)
        1. yum groupinstall -y "Development tools"
        2. yum install -y zlib-devel
        3. yum install -y openssl-devel
        4. yum install -y ncurses-devel
        5. yum install -y sqlite-devel
        6. Which python 
          1. /usr/bin/python
        7. 아래 명령 수행
          1. ln -s /usr/local/bin/python2.7/usr/local/bin/python
        8. 다시 which python
          1. /usr/local/bin/python
        9. 나갔다 들어와서 python 이라고 날려보면 정상적으로 반영된걸 볼 수 있음.
          1. python 버전 변경 완료
    2. Pip Upgrade
      1. pip 또한 구 버전이 설치 되어 있음.
      2. pip 버전 확인 
        1. pip --version
          1. 구버전 2.6 이라고 나옴.
      3. 신 버전 설치
        1. wget https://bootstrap.pypa.io/get-pip.py
        2. python get-pip.py
        3. ls -al /usr/local/bin/pip* 를 해보면 새로 설치 된 2.7 버전 확인 가능.
        4. 역시 나갔다 들어오거나 bash 갱신 해주면, 정상적으로 pip --version 확인 시 2.7로 바뀐 것을 확인 할 수 있게 됨.
          1. pip 버전 변경 완료
  2. TensorFlow Install
    1. CPU Only
      1. pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl
    2. GPU enabled
      1. pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.7.1-cp27-none-linux_x86_64.whl
      2. Cuda 인스톨
        1. 링크로 대신.
        2. https://www.tensorflow.org/versions/r0.7/get_started/os_setup.html#optional-install-cuda-gpus-on-linux
      3. ~/.bash_profile 안에 cuda 아래 환경 변수 추가
        1. LD_LIBRARY_PATH
          1. /usr/local/cuda 추가
        2. CUDA_HOME
          1. /usr/local/cuda 추가
  3. TensorFlow 수행
    1. TensorFlow 로딩 해보기
      1. 우선 라이브러리 import
      2. 위와 같은 에러 남.
      3. GLIBC_2.14 설치 하자!
        1. wget http://mirror.bjtu.edu.cn/gnu/libc/glibc-2.14.tar.xz
        2. tar xvf glibc-2.14.tar.xz
        3. cd glibc-2.14
        4. mkdir build
        5. cd build
        6. ../configure --prefix=/opt/glibc-2.14
        7. make -j4
        8. make install
        9. cd ~
        10. vi .bash_profile
        11. export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
        12. source .bash_profile
      4. 초기 에러는 해결 되었으나, 뒤이어 아래 에러 발생
        1. 이번에는 GLIBCXX_3.4.14 모듈 필요.
        2. rpmfind 에서 libstdc 모듈 설치
      5. 기타, CentOS6.X 버전에따라 좀더 추가 모듈 Dependency 가 날 수 있으나, 일단, CentOS6.X 후반 버전에서는 위 정도로 설치 완료...
    2. Hello, TensorFlow!

댓글 없음:

댓글 쓰기