본문 바로가기
 

하나성경

읽기 쉬운 성경, 하나성경을 소개합니다.

www.hbible.co.kr

컴퓨터에서는

[ Python ] 파이썬 컴파일 오류 Fatal Python error: init_import_site: Failed to import the site module

by 컴 여행자 2025. 4. 17.
728x90
반응형

 

파이썬
파이썬

 

 

 


Fatal Python error: init_import_site: Failed to import the site module
Python runtime state: initialized
Traceback (most recent call last):
File "~/src/Python-3.13.3/Lib/site.py", line 73, in <module>
import os
File "~/src/Python-3.13.3/Lib/os.py", line 29, in <module>
from _collections_abc import _check_methods
SystemError: <built-in function compile> returned NULL without setting an exception
make[1]: *** [Python/frozen_modules/abc.h] 오류 1
make[1]: Leaving directory `~/src/Python-3.13.3'
make: *** [profile-opt] 오류 2
    

 

 

이 오류는 일반적으로 Python을 컴파일할 때 사용된 GCC 컴파일러 버전이 낮아 최적화 프로세스 중 발생하는 버그 때문입니다. 아래 단계별 해결 방법을 참고하세요.

 

해결 방법

1. GCC 컴파일러 업그레이드

 

Python 3.11+는 C11 표준을 지원하는 최신 GCC 버전(7.3.1 이상)이 필요합니다.


CentOS/RHEL 7에서는 다음 명령어로 devtoolset-8 설치

sudo yum install centos-release-scl
sudo yum install devtoolset-8
scl enable devtoolset-8 bash
 
 

2. 최적화 옵션 변경

 

기존 컴파일러를 업그레이드할 수 없는 경우 --disable-optimizations 옵션 사용

./configure --disable-optimizations
make -j$(nproc)

 

단, 이 경우 Python 실행 성능이 10-20% 저하될 수 있습니다.

 

 

3. 병렬 빌드 문제 회피

 

단일 스레드로 빌드 시도

make -j1

 

 

4. 빌드 환경 정리

 

기존 빌드 잔여 파일 삭제 후 재시도

make distclean
rm -rf ./build

 

원인 분석
  • GCC 4.8.5 버그: 최적화(-O3) 과정에서 Python의 내부 모듈 초기화 순서가 잘못되는 문제 발생
  • C11 표준 미지원: Python 3.11부터 필수적인 C11 기능을 구형 컴파일러에서 지원하지 않음
  • 병렬 빌드 경합: make -j 사용 시 모듈 종속성 관리 실패 가능성

최신 Linux 배포판(Ubuntu 20.04+, CentOS 8+)에서는 기본 GCC 버전이 8.x 이상이므로 이러한 문제가 발생하지 않습니다.

지속적인 빌드 문제가 발생할 경우 Python 공식 바이너리 패키지 사용을 고려해 보세요.

 

 

 

※ 주의사항 : 일부 내용은 AI와 나눈 대화를 정리한 것이므로 이 점을 고려해서 읽으시기를 권장합니다.

 

 

 

https://www.python.org/

 

Welcome to Python.org

The official home of the Python Programming Language

www.python.org

 

 

728x90
반응형

댓글