6.51. Python-3.8.1

Python 3 패키지는 Python 개발 환경을 포함하고 있다. 객체 지향 프로그래밍, 스크립트 작성, 대형 프로그램 프로토타입 제작 또는 응용 프로그램 자체를 개발하는 데 유용하다.

예상 빌드 시간: 1.2 SBU
필요 디스크 공간: 426 MB

6.51.1. Python 3 설치

Python 컴파일을 준비한다:

./configure --prefix=/usr       \
            --enable-shared     \
            --with-system-expat \
            --with-system-ffi   \
            --with-ensurepip=yes

Configure 옵션들의 의미:

--with-system-expat

Expat의 시스템 버전과의 링크를 활성화 한다.

--with-system-ffi

libffi의 시스템 버전과의 링크를 활성화 한다.

--with-ensurepip=yes

pipsetuptools 패키징 프로그램을 빌드한다.

패키지를 컴파일한다:

make

결과를 테스트하려면 make test를 실행하라. 네트워크 연결 또는 추가 패키지가 필요한 일부 테스트는 생략한다. 네트워크 구성이 아직 완료되지 않았기 때문에 test_normalization이라는 이름의 테스트가 실패한다. 전체적으로 보다 확실한 결과를 얻으려면 Python 3이 BLFS에서 재설치될 때 테스트를 다시 실행하면 된다.

패키지를 설치한다:

make install
chmod -v 755 /usr/lib/libpython3.8.so
chmod -v 755 /usr/lib/libpython3.so
ln -sfv pip3.8 /usr/bin/pip3

설치 명령들의 의미:

chmod -v 755 /usr/lib/libpython3.{8.,}so

라이브러리가 다른 라이브러리와 같은 권한을 갖도록 수정한다.

원한다면 사전 포맷된 설명서를 설치하라:

install -v -dm755 /usr/share/doc/python-3.8.1/html 

tar --strip-components=1  \
    --no-same-owner       \
    --no-same-permissions \
    -C /usr/share/doc/python-3.8.1/html \
    -xvf ../python-3.8.1-docs-html.tar.bz2

문서 설치 명령들의 의미:

--no-same-owner and --no-same-permissions

설치될 파일들의 소유권과 사용 권한을 올바르게 지정한다. 이러한 옵션이 없으면 tar를 사용해서 패키지를 설치할 때 소유권과 권한으로 원제작자의 이름이 부여된다.

6.51.2. Python 3의 내용

설치된 프로그램들: 2to3, idle3, pip3, pydoc3, python3, python3-config
설치된 라이브러리: libpython3.8.so, libpython3.so
설치된 디렉토리들: /usr/include/python3.8, /usr/lib/python3, /usr/share/doc/python-3.8.1

요약

2to3

Python 2.x 소스 코드를 읽고 일련의 수정을 거쳐서 Python 3.x 코드로 변환하는 Python 프로그램이다.

idle3

Python 인식 GUI 편집기를 여는 래퍼 스크립트. 이 스크립트를 실행하려면 반드시 Python보다 먼저 Tk를 설치해서 Tkinter Python 모듈이 구축되도록 해야 한다.

pip3

Python용 패키지 설치 프로그램. pip를 사용하여 Python Package Index 및 기타 인덱스로부터 패키지를 설치할 수 있다.

pydoc3

Python 문서 도구.

python3

대화형, 객체 지향 인터프리터 프로그래밍 언어.