본문 바로가기
ERROR

[MySQL] EC2 Ubuntu환경 python 3.11 사용 시 ChefBuildError

by 코드뭉치 2023. 6. 1.

1️⃣ 문제

poetry install 중 mysqlclient 설치하는 과정에서 에러가 발생했다.

 

빌드에 필요한 요소들이 없다는 에러

ChefBuildError

  Backend subprocess exited when trying to invoke get_requires_for_build_wheel
  
  /bin/sh: 1: mysql_config: not found
  /bin/sh: 1: mariadb_config: not found
  /bin/sh: 1: mysql_config: not found
  mysql_config --version
  mariadb_config --version
  mysql_config --libs

 

 

2️⃣ 시도

검색해보니 libmysqlclient-dev와 python3-dev가 필요하다고 함.

python3-dev는 처음에 설치했지만 혹시 몰라다시 설치해줬다.

sudo apt install libmysqlclient-dev
sudo apt install python3-dev python3-pip

 

새로운 에러, 이번에는 Python.h라는 파일이나 디렉토리가 없다.

MySQLdb/_mysql.c:46:10: fatal error: Python.h: No such file or directory
         46 | #include "Python.h"
            |          ^~~~~~~~~~

 

 

3️⃣ 해결

mysqlclient를 사용할 때는 libmysqlclient-dev를 설치해줘야하고,

python3.11 버전이라면 python-dev의 버전도 3.11로 맞춰주어야 한다.

sudo apt install libmysqlclient-dev
sudo apt-get install python3.11-dev

 

댓글