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 包或已预编译的二进制包,通常不会有类似问题。
评论区