이번 포스팅에서는 CentOS 8 Python 3.7 Develop Setting 을 해보겠습니다.

 

먼저 현재 파이썬 버전 확인!

 

환경은 CentOS 8 버전 입니다.

그냥 python으로 명령어를 치면 안나오고 python3 버전만 깔려있습니다.

python2를 해보니 Install할지 물어보는 걸 보면 CentOS 8버전에는 python2가 없는 듯 합니다.

 

Default Python3가 3.6.8인데 저는 프로젝트에서 3.7버전을 사용하기 때문에

python 3.7을 다운받고 Default로 잡는 것 까지 세팅해보겠습니다.

 

1. 패키지 관리자 yum update 진행.

CentOS8버전부터는 DNF 를 민다는데.. yum으로 해도 될듯합니다. (예제도 yum이 많을듯..)

 

 

2. 필수 패키지 설치

sudo yum install gcc openssl-devel libffi-devel bzip2-devel

 

 

3. python 버전 별 경로 확인 후 Install

 

https://www.python.org/ftp/python/ 에서 버전을 확인하고

tgz 파일로 다운받습니다.

sudo wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tgz

 

Python-3.7.6.tgz 파일이 설치됩니다.

해당 파일을 /usr/src 폴더로 옮겨서 정리해줍시다.

sudo mv Python-3.7.6.tgz /usr/src/Python-3.7.6.tgz

 

cd /usr/src 로 해당 경로로 이동 후 압축파일을 풀어줍시다.

 

sudo tar xzf Python-3.7.6.tgz

Python-3.7.6이라는 폴더가 생성된 것을 확인할 수 있습니다.

 

해당 폴더로 이동 후 configure 파일로 설정을 잡아줍니다.

sudo ./configure --enable-optimizations

 

 

바이너리에 해당버전 파이썬 등록.

sudo make altinstall

 

진행하려는데 make 패키지가 없군요.

make 패키지부터 설치해줍시다.

sudo yum install make

다시 sudo make altinstall

 

어마어마한게 지나갑니다.

 

make install 과 차이를 찾아보니

make install 은 덮어쓰기.

make altinstall 은 새로 만들기더군요.

 

여기까지 마치셨다면 python3.7 명령어로 python3.7을 실행할 수 있을겁니다.

 

이제 Default python 명령어에 python 3.7.6을 등록해보자.

 

which python3.7 명령어로 경로확인.

/usr/local/bin/python3.7

 

 

bashrc 파일 수정하기

sudo vi /root/.bashrc

 

alias python="/usr/local/bin/python3.7" 를 추가해주자.

 

 

root 권한으로 source /root/.bashrc 명령어 실행.

 - 다른 계정으로 접근중이라면 su 명령어를 이용해 root 계정을 빌려오자.

python 명령어 확인.

 

 

su 권한을 반납하려면 exit 명령어로 나가면 된다.

root 권한은 최대한 사용하지 않는 것이 좋다고 하니 참고하기 바란다.

 

 

# 추가내용. (각 계정별 default python setting)

위 내용대로하면 root 계정에서만 python 명령어로 python 3.7.6 이 실행되는 것을 확인했다.


일반 사용자(현재 session 계정) 에 등록해보자.

 

sudo vi ~/.bashrc

.bashrc 파일에 alias python="/usr/local/bin/python3.7" 추가

source .bashrc 실행

python 명령어 체크.

 

pip3.7 도 pip에 등록해줍시다.

 

완료.

 

 

 

추가.

 

모든 유저에게 경로를 등록할 수 있다.

/etc/profile 에 경로등록 (root 권한 필요)

위 예제에서는 alias 를 사용했지만 export 를 활용해도 된다.

export PATH=[PATH]:$PATH

 

profile 수정 후 source 는 동일하게 진행.

 

1. edit /etc/profile

2. source /etc/profile

3. test

 

 

sudo 명령으로 python 이나 pip 을 실행하면 not found 에러가 발생한다.

이 때 symbolic link 를 걸어주면 sudo 권한으로도 실행할 수 있다.

 

sudo ln -s /usr/local/bin/pip3.7 /usr/bin/pip3.7
sudo ln -s /usr/local/bin/python3.7 /usr/bin/python3.7
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기