Exception: Can not find valid pkg-config name. Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually
是由于安装 mysqlclient==2.2.0 时缺少系统依赖导致的。mysqlclient 是一个基于 C 扩展的 Python 包,需要系统中安装 MySQL 相关的开发库和 pkg-config 工具才能编译安装。
解决方案:安装系统依赖
在 Ubuntu 系统中,执行以下命令安装所需的依赖库:
sudo apt update
依赖说明:
pkg-config:错误信息中明确提到pkg-config: not found,这个工具用于查找系统中已安装的库文件,是编译mysqlclient的必要工具。libmysqlclient-dev:这是 MySQL 客户端的开发库,包含编译mysqlclient所需的头文件(.h)和链接库(.so)。
重新安装
依赖安装完成后,重新执行 pip install 命令即可:
pip install -r requirements.txt
补充说明
如果你的系统中安装的是 MariaDB(MySQL 的分支),可能需要安装 libmariadbclient-dev 替代 libmysqlclient-dev:
sudo apt install libmariadbclient-dev
安装依赖后,mysqlclient 就能正常编译并安装了。其他包(如 fastapi、uvicorn 等)是纯 Python 包或已预编译的二进制包,通常不会有类似问题。
评论区