linuxfromscratch:12.1:121-python-3.12.2

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
linuxfromscratch:12.1:121-python-3.12.2 [2024/06/11 06:00] – 바깥 편집 127.0.0.1linuxfromscratch:12.1:121-python-3.12.2 [2024/06/15 12:13] (현재) – [8.51.1. Python 3 설치] baecy
줄 9: 줄 9:
 ===== 8.51. Python-3.12.2 ===== ===== 8.51. Python-3.12.2 =====
  
-파이썬 3 패키지에는 파이썬 개발 환경이 포함되어 있습니다. 객체 지향 프로그래밍, 스크립트 작성, 대규모 프로그램 프로토타입 제작, 전체 애플리케이션 개발에 유용합니다. Python은 인터프리터 컴퓨터 언어입니다.+Python 3 패키지에는 파이썬 개발 환경이 포함되어 있습니다. 객체 지향 프로그래밍, 스크립트 작성, 대규모 프로그램 프로토타입 제작, 전체 애플리케이션 개발에 유용합니다. Python은 interpreter 컴퓨터 언어입니다.
  
-**대략적인 빌드 시간입니다:** 1.8 SBU \\  +  * **빌드 시간:** 1.8 SBU  
-**필요한 디스크 공간:** \\ 485MB+  **디스크 공간:** 485MB
  
 ---- ----
- 
 ==== 8.51.1. Python 3 설치 ==== ==== 8.51.1. Python 3 설치 ====
  
 Python 컴파일을 준비합니다. Python 컴파일을 준비합니다.
- +<code bash>
-<code baah>+
 ./configure --prefix=/usr        \ ./configure --prefix=/usr        \
             --enable-shared      \             --enable-shared      \
줄 27: 줄 25:
 </code> </code>
  
-=== 구성 옵션의 의미는 다음과 같습니다. ===+=== configure 옵션 설명 ===
  
   * //--with-system-expat// \\ Expat의 시스템 버전에 대한 연결을 활성화합니다.   * //--with-system-expat// \\ Expat의 시스템 버전에 대한 연결을 활성화합니다.
-  * **--enable-optimizations** \\ 광범위하지만 시간이 많이 걸리는 최적화 단계를 활성화합니다. 인터프리터는 두 번 빌드되며, 첫 번째 빌드에서 수행된 테스트는 최적화된 최종 버전을 개선하는 데 사용됩니다.+  * //--enable-optimizations// \\ 광범위하고 시간이 많이 걸리는 최적화 단계를 활성화합니다. 인터프리터는 두 번 빌드되며, 첫 번째 빌드에서 수행된 테스트는 최적화된 최종 버전을 개선하는 데 사용됩니다.
  
 패키지를 컴파일합니다. 패키지를 컴파일합니다.
줄 38: 줄 36:
 </code> </code>
  
-이 시점에서 테스트를 실행하는 것은 권장하지 않습니다. 테스트는 부분적인 LFS 환경에서 실행이 종료지 않는 것으로 알려져 있습니다. 원하는 경우, 이 장의 마지막에 또는 파이썬 3을 BLFS에 다시 설치할 때 테스트를 다시 실행할 수 있습니다. 어쨌든 테스트를 실행하려면 ''make test''를 실행합니다.+이 시점에서 테스트를 실행하는 것은 권장하지 않습니다. 테스트는 부분적인 LFS 환경에서 중단되는 것으로 알려져 있습니다. 원하는 경우, 이 장의 마지막에 또는 파이썬 3을 BLFS에 다시 설치할 때 테스트를 다시 실행할 수 있습니다. 어쨌든 테스트를 실행하려면 **make test**를 실행합니다.
  
-패키지를 설치합니다.+패키지를 설치합니다:
  
 <code bash> <code bash>
줄 46: 줄 44:
 </code> </code>
  
-이 책의 여러 곳에서 파이썬 3 프로그램과 모듈을 설치하기 위해 //root// 사용자로 ''pip3'' 명령을 사용합니다. 이는 가상 환경 또는 일반 사용자의 홈 디렉토리에 패키지를 설치(해당 사용자로 ''pip3''를 실행하여)하라는 Python 개발자의 권장 사항과 상충됩니다. //root// 사용자가 pip3를 실행할 때마다 여러 줄의 경고가 출력됩니다.+이 책의 여러 곳에서 파이썬 3 프로그램과 모듈을 설치하기 위해 //root// 사용자로 **pip3** 명령을 사용합니다. 이는 가상 환경 또는 일반 사용자의 홈 디렉토리에 패키지를 설치(일반 사용자로 **pip3**를 실행)하라는 Python 개발자의 권장 사항과 상충됩니다. 루트 사용자가 **pip3**를 실행할 때마다 여러 줄의 경고가 출력됩니다.
  
-개발가 이러한 권장을 하는 주된 이유는 시스템의 패키지 관리자(예: ''dpkg'')와의 충돌을 피하기 위해서입니다. LFS에는 시스템 전체 패키지 관리자가 없으므로 문제가 되지 않습니다. 또한 ''pip3''는 실행될 때마다 새 버전을 확인합니다. 도메인 이름 확인은 아직 LFS //chroot// 환경에서 구성되지 않았으므로 ''pip3''는 새 버전을 확인할 수 없으며 경고를 표시합니다.+일반 사용로 설치를 권장하는 주된 이유는 시스템의 패키지 관리자(예: **dpkg**, **emerge** 등)와의 충돌을 피하기 위해서입니다. LFS에는 시스템  패키지 관리자가 없으므로 문제가 되지 않습니다. 또한 **pip3**는 실행될 때마다 새 버전을 확인합니다. 도메인 이름 확인은 아직 LFS chroot 환경에서 구성되지 않았으므로 **pip3**는 새 버전을 확인할 수 없으며 경고를 표시합니다.
  
-LFS 시스템을 부팅하고 네트워크 연결을 설정하면 다른 경고가 표시되어 새 버전을 사용할 수 있을 때마다 사용자에게 PyPI에 미리 빌드된 에서 ''pip3''를 업데이트하라고 알려줍니다. 그러나 LFS는 ''pip3''를 파이썬 3의 일부로 간주하므로 별도로 업데이트해서는 안 됩니다. 또한 사전 빌드된 에서 업데이트하면 소스 코드로부터 Linux 시스템을 구축하려는 우리의 목표에서 벗어날 수 있습니다. 따라서 새 버전의 ''pip3''에 대한 경고도 무시해야 합니다. 원하는 경우 다음 명령을 실행하여 설정 파일을 생성함으로써 이러한 모든 경고를 표시하지 않을 수 있습니다.+LFS 시스템을 부팅하고 네트워크 연결을 설정하면 다른 경고가 표시되어 사용자에게 PyPI에 미리 빌드된 wheel에서 **pip3**를 업데이트(새 버전을 사용할 수 있을 때)하라고 알려줍니다. 그러나 LFS는 **pip3**를 파이썬 3의 일부로 간주하므로 별도로 업데이트해서는 안 됩니다. 또한 사전 빌드된 wheel에서 업데이트하면 소스 코드로부터 Linux 시스템을 구축하려는 우리의 목표에서 벗어날 수 있습니다. 따라서 새 버전의 **pip3**에 대한 경고도 무시해야 합니다. 원하는 경우 다음 명령을 실행하여 구성 파일을 생성함으로써 이러한 모든 경고를 표시하지 않을 수 있습니다:
  
 <code bash> <code bash>
줄 62: 줄 60:
 <WRAP important center round 90%> <WRAP important center round 90%>
 **중요** \\ **중요** \\
-LFS와 BLFS에서는 일반적으로 ''pip3'' 명령으로 Python 모듈을 빌드하고 설치합니다. 두 책 모두에서 ''pip3'' 설치 명령은 //root// 사용자로 실행(파이썬 가상 환경에서 사하는 용도가 아닌 경우)해야 합니다. 루트 사용자가 아닌 사용자로 ''pip3 install''을 실행하면 작동하는 것처럼 보일 수 있지만 다른 사용자가 설치된 모듈에 접근 할 수 없게 됩니다.+LFS와 BLFS에서는 일반적으로 **pip3** 명령으로 파이썬 모듈을 빌드하고 설치합니다. 두 책 모두에서 **pip3** 설치 명령은 //root// 사용자로 실행(파이썬 가상 환경용이 아닌 경우)해야 합니다. 루트 사용자가 아닌 사용자로 **pip3 install**을 실행하면 잘 작동하는 것처럼 보일 수 있지만 다른 사용자가 설치된 모듈에 액세스할 수 없게 됩니다.
  
-''pip3''로 실행하는 모듈 설치는 이미 설치된 모듈을 자동으로 다시 설치하지 않습니다. ''pip3 install'' 명령을 사용하여 모듈을 업그레이드할 때(예: meson-0.61.3에서 meson-0.62.0으로) 명령줄에 ''--upgrade'' 옵션을 삽입하세요. 어떤 이유로 인해 모듈을 다운그레이드하거나 동일한 버전을 다시 설치해야 하는 경우 명령줄에 ''--force-reinstall --no-deps''를 입력합니다.+**pip3 install**은 이미 설치된 모듈을 자동으로 다시 설치하지 않습니다. **pip3 install** 명령을 사용하여 모듈을 업그레이드할 때(예: meson-0.61.3에서 meson-0.62.0으로) 명령줄에 ''--upgrade'' 옵션((pip3 install --upgrade <module name>))을 삽입하세요. 만약 어떤 이유로 인해 모듈을 다운그레이드하거나 동일한 버전을 다시 설치해야 하는 경우 명령줄에 ''--force-reinstall --no-deps''를 입력합니다.
 </WRAP> </WRAP>
  
-원하는 경우 미리 포맷된 문서를 설치합니다:+원하는 경우 미리 형식화된 문서를 설치합니다.
  
 <code bash> <code bash>
줄 78: 줄 76:
 </code> </code>
  
-=== 문서 치 령어의 의미는 다음과 같습니다: ===+===  tar, cp 옵션 설명 ===
  
-  * //--no-same-owner(tar) 및 --no-preserve=mode(cp)// \\ 설치된 파일의 소유권과 권한이 올바른지 확인합니다. 이 옵션을 사용하지 않으면 tar가 업스트림 작성자의 값으로 패키지 파일을 설치하며 파일은 제한적인 권한을 갖게 됩니다.+  * //--no-same-owner(tar)// 및 //--no-preserve=mode(cp)// \\ 설치된 파일의 소유권과 권한이 올바른지 확인합니다. 이 옵션을 사용하지 않으면 tar가 업스트림 작성자의 값으로 패키지 파일을 설치하며 파일은 제한적인 권한을 갖게 됩니다.
  
-----+---- 
  
 ==== 8.51.2. Python 3 패키지 구성 ==== ==== 8.51.2. Python 3 패키지 구성 ====
  • linuxfromscratch/12.1/121-python-3.12.2.1718085646.txt.gz
  • 마지막으로 수정됨: 2024/06/11 06:00
  • 저자 127.0.0.1