python – Django – MySQLdb:找不到符号:_mysql_affected_rows

尝试从Django使用MySQLdb时,一位同事收到此错误消息:

[...]
ImproperlyConfigured("Error loading MySQLdb module: %s" % e) django.core.exceptions.ImproperlyConfigured: 
Error loading MySQLdb module: dlopen(/Users/roy/.python-eggs/MySQL_python-1.2.3c1-py2.5-macosx-10.5-i386.egg-tmp/_mysql.so, 2): 
Symbol not found: _mysql_affected_rows 
Referenced from: /Users/roy/.python-eggs/MySQL_python-1.2.3c1-py2.5-macosx-10.5-i386.egg-tmp/_mysql.so Expected in: dynamic lookup

他正在使用OS X 10.5,Python 2.5(使用OS X到达),MySQL 5.1& MySQLdb 1.2.3c1.

知道怎么攻击这个?

最佳答案
最好从头开始安装mysql和它的Python绑定,每当我在OS X 10.4或10.5上需要MySQLdb时,我都会使用以下步骤:

>为您的系统安装MySQL,dmg安装程序应该足够了
> MySQL的默认位置将在某处:/usr/local/mysql-5.0.45-osx10.4-i686.从/usr/local / mysql / lib,创建一个软链接:

ln -s ../../mysql-5.0.45-osx10.4-i686/lib mysql
>下载MySQLdb source并解压缩
>在解压缩的MySQLdb目录下编辑文件site.cfg,注释掉registry_key并将mysql_config设置为:

mysql_config = /usr/local/mysql-5.0.45-osx10.4-i686/bin/mysql_config
>继续在MySQLdb目录中构建常规Python包:

sudo python setup.py安装
>如果上面的一切都很好,请在新终端中测试MySQLdb:

python -c“import MySQLdb”

如果成功,上述内容应该不返回.上面的例子显示了OS 10.4和MySQL 5.0,用适当的工具版本替换它们.

转载注明原文:python – Django – MySQLdb:找不到符号:_mysql_affected_rows - 代码日志