ERROR
[MySQL] EC2 Ubuntu환경 python 3.11 사용 시 ChefBuildError
코드뭉치
2023. 6. 1. 22:57
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