pip安装flask_mysqldb失败,报exit status 2及mysql.h缺失错误
解决flask_mysqldb安装时找不到mysql.h的问题
这个错误我之前也碰到过,本质是pip编译flask_mysqldb依赖的mysqlclient模块时,找不到MySQL的开发头文件(mysql.h)。你已经装了VC++编译环境,那接下来就从让编译器找到头文件或者跳过编译这两个方向来解决:
方法一:用预编译包跳过编译(最省心)
Windows下直接装预编译好的mysqlclient(flask_mysqldb的核心依赖),不用自己折腾编译:
- 先装pipwin工具(专门帮Windows用户找预编译包):
pip install pipwin - 然后用pipwin装mysqlclient:
pipwin install mysqlclient - 等mysqlclient装完,再执行
pip install flask_mysqldb就没问题了
方法二:手动配置MySQL开发库路径
如果你已经装了MySQL Server或者MySQL Connector/C,那只要让编译器找到它的头文件和库文件就行:
- 找到你的MySQL安装目录,比如默认路径是
C:\Program Files\MySQL\MySQL Server 8.0,里面会有include(存头文件)和lib(存库文件)两个文件夹 - 把
include的完整路径添加到系统的INCLUDE环境变量,把lib的完整路径添加到LIB环境变量 - 重启你的Git Bash(让新的环境变量生效),然后再跑
pip install flask_mysqldb - 如果还是不行,直接在pip命令里指定路径试试(把下面的路径换成你实际的MySQL路径):
pip install flask_mysqldb --global-option=build_ext --global-option="-IC:\Program Files\MySQL\MySQL Server 8.0\include" --global-option="-LC:\Program Files\MySQL\MySQL Server 8.0\lib"
方法三:安装MySQL Connector/C
要是你没装MySQL Server,也可以单独装MySQL Connector/C(专门给开发用的库):
- 下载对应你系统版本的MySQL Connector/C安装包,安装时记得勾选“开发组件”或者选择完整安装
- 安装完成后,同样把它的
include和lib路径添加到环境变量,之后再安装flask_mysqldb就ok了
内容的提问来源于stack exchange,提问作者escplat12
相关产品推荐
相关产品推荐

