사전 작업
yum update 여부
Centos6은 EOL 되었기 때문에 yum이 제대로 작동되지 않을 수도 있다. ` cd /etc/yum.repo.d`로 이동하여 리포지토리 파일들을 설정해 줄 수 있다. 일반적으로 리포지토리 설정 파일의 이름은. repo로 끝나며, 각 파일 안에는 해당 리포지토리의 URL, GPG 키 정보, 사용할 미러의 URL 등이 포함되어 있다.
1. 리포지토리 활성화: 각 설정 파일에 enabled=1로 설정되어 있어야 해당 리포지토리가 활성화된다. 이 설정이 enabled=0으로 되어 있다면 해당 리포지토리는 사용되지 않는다.
2. baseurl 설정: 내가 사용하고 있는 서버는 yum이 작동하지 않아 baseurl을 http://vault.centos.org 참고하여 경로를 다시 작성해주었다. `ex) baseurl=http://vault.centos.org/6.9/os/$basearch/`
3. GPG 키: 리포지토리가 요구하는 GPG 키가 올바르게 설정되어 있는지 확인해야한다. 나 같은 경우 mysql-community.repo에 GPG키가 올바르지 않아 다시 설정해주었다.
yum 사용하지 않고 직접 설치하기
Centos6 버전들은 이미 EOL 된지 오래되어 repo를 지원해 주지 않기에 나 또한 처음에 yum으로 설치하려 했으나 빈번히 실패하고, 활성화되어있는 repo 사이트들을 찾기 어려워 직접 다운로드하기로 했다. 하지만 파이썬을 컴파일 및 라이브러리 설치를 위해서는 yum 설치가 한번은 필요하다. 수동으로 가능하지만, 작업이 상당히 번거롭기 때문에 웬만하면 최소 yum 설치환경을 만들어 두는 것이 좋다.
필요 컴파일러 및 라이브러리 설치
yum groupinstall -y "Development Tools"
yum install -y openssl-devel bzip2-devel libffi-devel
해당 라이브러리들이 파이썬에 어떤 역할을 제공하는지 간략하게 적었다.
1. openssl-devel: 보안 통신을 위한 SSL/TLS 지원 및 암호화 기능 제공
2. bzip2-devel: bzip2 형식의 압축 파일을 처리하기 위한 지원
3. libffi-devel: 파이썬 코드에서 C 라이브러리와의 상호작용을 가능하게 하는 지원
파이썬 수동 다운로드 및 압축 해제
# 다운로드
cd /usr/src
wget https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tgz
# 압축 해제
tar xzf Python-3.11.0.tgz
cd Python-3.11.0
파이썬 3.11 설치 및 버전 확인
./configure --enable-optimizations
make altinstall
// 버전 확인
python3.11 --version
altinstall 옵션을 사용하여 기존 Python을 대체하지 않도록 설정해준다.
설치 오류 해결 방법
gcc -pthread -c -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -std=c11 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal -I. -I./Include -DPy_BUILD_CORE -o Programs/python.o ./Programs/python.c cc1: error: unrecognized command line option "-std=c11" make: *** [Programs/python.o] 오류 1
설치 도중 -std=c11 옵션을 인식하지 못하는 경우가 발생할 수도 있다. 해당 오류는 gcc version 낮아 나타나는 오류로 gcc 버전을 업그레이드 해야된다.
# gcc 다운로드 및 devtoolset 설치
wget https://people.centos.org/tru/devtools-2/devtools-2.repo --no-check-certificate -O /etc/yum.repos.d/devtools-2.repo
yum install devtoolset-2-gcc devtoolset-2-binutils
yum install devtoolset-2-gcc-c++ devtoolset-2-gcc-gfortran
# 기본 gcc 4.8.2 설정
scl enable devtoolset-2 bash
source /opt/rh/devtoolset-2/enable
# gcc 버전 확인
gcc --version
설치 후 다시 한번 파이썬 컴파일러 설치를 진행하면 CentOS 6.9에 Python 3.11 을 설치 할 수 있다.
파이썬 3.11 버전 동작되는지 확인하기
아무 경로에 test.py 파일을 만들어주고 코드를 작성 후 실행해보면 동작하지 않는다. python3부터는 괄호가 없으면 SyntaxError를 내뿜는다.
#!/usr/bin/env python3.11
print "Hello, Python3!!"
#!/usr/bin/env python3.11
print("Hello, Python3!!")
'Linux' 카테고리의 다른 글
| Logrorate 사용법 (0) | 2024.07.30 |
|---|---|
| 간단한 로그 서버 구축기 (0) | 2024.06.21 |