Problems installing MySQL-python-1.2.3c1 on Mac Snow Leopard

和自甴很熟 提交于 2020-01-05 02:55:08

问题


I am having a problem installing the Python MySQL connector (MySQL-python-1.2.3c1) on my Mac OSX Snow Leopard.

System State

I have manually compiled an installed: mysql-5.1.41

This seems to work fine, as I can create and query a database from the commandline.

I have compiled: MySQL-python-1.2.3c1

I first set the following in the site.cfg file:

mysql_config = /usr/local/mysql/bin/mysql_config

I then built and compiled MySQL-python-1.2.3c1 following their guide:

sudo python setup.py build
sudo python setup.py install

I now test the installation with Python:

python -c "import MySQLdb"

Error Message

This then gives me the following error, and I'm stumped as to how to fix it:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "build/bdist.macosx-10.6-universal/egg/MySQLdb/__init__.py", line 19, in <module>
  File "build/bdist.macosx-10.6-universal/egg/_mysql.py", line 7, in <module>
  File "build/bdist.macosx-10.6-universal/egg/_mysql.py", line 6, in __bootstrap__
ImportError: dlopen(/Users/username/.python-eggs/MySQL_python-1.2.3c1-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so, 2): Symbol not found: _mysql_affected_rows
  Referenced from: /Users/username/.python-eggs/MySQL_python-1.2.3c1-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so
  Expected in: flat namespace
 in /Users/username/.python-eggs/MySQL_python-1.2.3c1-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so
mymac: username$ 

Things I've Tried

I've looked at this blog antoniocangiano.com but it is for an older version of MySQL-python and is not really applicable. But I tried adding the soft link it mentions.

I then looked at this blog post: http://blog.some-abstract-type.com/2009/09/mysql-python-and-mac-os-x-106-snow.html. And tried building compiling with the ARCHFLAGS settings - but no joy.

Please Help

If you have any ideas please let me know.

Many thanks

Ben...


回答1:


First, I would suggest using the MySQL binaries for MacOS X 10.5 64-bit (x86_64). The tar ball works on MacOS X 10.6.

You said you used ARCHFLAGS.. however, try it again like this:

shell> ARCHFLAGS="-arch x86_64" python setup.py build
shell> sudo python setup.py install

Thus building as normal user, installing as root. (It's good to remove the source, and unpack correcting the site.cfg file again).




回答2:


What does

otool -L /Users/username/.python-eggs/MySQL_python-1.2.3c1-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so

report?



来源:https://stackoverflow.com/questions/1907540/problems-installing-mysql-python-1-2-3c1-on-mac-snow-leopard

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!