我有一个带有MySQL服务器的Fedora 11盒子。 Fedora 11在内部使用python 2.6,并且盒子上自动安装了python 2.6。我已经为2.5.5版本创建了一个python virtual-env,这样我就可以运行turbogears 1.x应用程序了。我在盒子上安装了MySQLdb rpm(它与python 2.6配合使用)。
当我从python 2.6版本中导入MySQLdb时,导入成功。当我从python 2.5.5 virtual-env中导入MySQLdb时导入失败(因为我已经安装了带有--no-site-packages的virtual-env)。所以,我必须安装MySQLdb python作为本地包(虚拟环境本地)。
虚拟环境中的'easy_install MySQL-python'失败了。它下载了MySQL-python-1.2.3.c1.tar.gz / download,但'python setup.py build'失败并出现错误。在virtual-env之外构建MySQL时会出现同样的问题。用于MySQL-python的'python setup.py build'试图链接到一个库(我错过了一些库)吗?或者下载的代码是否缺少一些头文件(不太可能)?
感谢。
S.Mark,
如果我要安装MySQL头文件,他们会不会使用现有的rpms?
[抱歉,因为多余。本质上,MySQL在机器上运行,MySQL-python适用于python 2.6,但是MySQL-python在virtualenv for python 2.5.5中不起作用。]
感谢您尝试提供帮助。
# rpm -qa | grep -i mysql
MySQL-python-1.2.3-0.4.c1.fc11.x86_64
perl-DBD-MySQL-4.010-1.fc11.x86_64
mysql-libs-5.1.42-7.fc11.x86_64
mysql-5.1.42-7.fc11.x86_64
php-mysql-5.2.12-1.fc11.x86_64
mysql-server-5.1.42-7.fc11.x86_64
答案 0 :(得分:6)
_mysql.c:36:23: error: my_config.h: No such file or directory
_mysql.c:38:19: error: mysql.h: No such file or directory
_mysql.c:39:26: error: mysqld_error.h: No such file or directory
_mysql.c:40:20: error: errmsg.h: No such file or directory
请安装MySQL头文件,可能是here
答案 1 :(得分:1)
作品!谢谢你的帮助。
我在盒子上安装了mysql-devel包(yum install mysql-devel)。
然后在virtual-env(python 2.5.5)中执行easy_install MySQL-python,并且编译/安装成功(带有一些警告)。
感谢。
答案 2 :(得分:0)
仅提及可能最终会出现的其他人,
我在安装mysql-devel
时解决了这个错误$ yum install mysql-devel.x86_64
希望这有帮助
答案 3 :(得分:0)
如果在安装mysql-devel软件包后它仍无法工作,请检查“/ usr / include / mysql”的内容。
如果为空则可能是mysql-devel已经在某个地方安装了头文件,运行以下命令来查找
找到/ usr / include / -maxdepth 1 -name mysql *
如果找到,请创建如下的符号链接以解决问题。
ln -s / usr / include / mysql51 / usr / include / mysql