在 Virtualenv 中 Pip 安装 MySQLdb 失败

Posted

技术标签:

【中文标题】在 Virtualenv 中 Pip 安装 MySQLdb 失败【英文标题】:Pip Install MySQLdb Failing in Virtualenv 【发布时间】:2017-03-01 20:16:09 【问题描述】:

我正在尝试从 EC2 实例上的虚拟环境(运行 python 2.7)安装 mysqldb 模块:

NAME="Amazon Linux AMI"
VERSION="2016.09"
ID="amzn"
ID_LIKE="rhel fedora"
VERSION_ID="2016.09"
PRETTY_NAME="Amazon Linux AMI 2016.09"
ANSI_COLOR="0;33"
CPE_NAME="cpe:/o:amazon:linux:2016.09:ga"
HOME_URL="http://aws.amazon.com/amazon-linux-ami/"
Amazon Linux AMI release 2016.09

使用命令:pip install MySQLdb

这条线失败了:

_mysql.c:29:20: fatal error: Python.h: No such file or directory

我认为这是因为我缺少 python-devel。但是,当我尝试使用 yum install python-devel 安装 python-devel 时,我被告知我必须以 root 用户身份安装它。当我以 root 身份运行 sudo yum install python-devel 时,我收到消息:Package python26-devel-2.6.9-2.88.amzn1.x86_64 already installed and latest version。在我看来,它正在为 python 2.6 安装一个版本。

帮助?

【问题讨论】:

【参考方案1】:

尝试在venv之外安装以下包,然后尝试安装MySQLdb

sudo yum install mysql mysql-devel mysql-common mysql-libs python-devel python-setuptools gcc

【讨论】:

仍然收到此错误_mysql.c:29:20: fatal error: Python.h: No such file or directory

以上是关于在 Virtualenv 中 Pip 安装 MySQLdb 失败的主要内容,如果未能解决你的问题,请参考以下文章

无法在 Virtualenv 中 pip 安装 MySQL-python

在 virtualenv 中控制 pip 版本

virtualenv下用pip安装whl失败

virtualenv 不包括 pip

安装Python, Pip, Virtualenv

在 virtualenv 中通过 pip 安装 PyGObject [重复]