在進一步討論之前,這裏有我的Mac的一些細節和Python安裝(ActivePython的)和wxPython的版本:MySQLdb的不符合32位的蟒蛇在Mac OSX工作
Mac版: 10.6.6 Python版本:2.7.1(ActiveState的Python)的 wxPython的版本:wxPython2.8-OSX-Unicode的py2.7
這裏是一個小的代碼,我寫測試:
#! /usr/bin/env arch -i386 /usr/local/bin/python
import time
import random
import re
import wx
from wx.lib.mixins.listctrl import ListCtrlAutoWidthMixin
import serial
import itertools
import datetime
import sys
import os
import MySQLdb
print "Hello World"
這裏是我從運行它得到了錯誤:
Traceback (most recent call last):
File "./sar.pyw", line 13, in <module>
import MySQLdb
File "/Users/ven/Library/Python/2.7/lib/python/site-packages/MySQLdb/__init__.py", line 19, in <module>
import _mysql
ImportError: dlopen(/Users/ven/Library/Python/2.7/lib/python/site-packages/_mysql.so, 2): Symbol not found: _mysql_affected_rows
Referenced from: /Users/ven/Library/Python/2.7/lib/python/site-packages/_mysql.so
Expected in: flat namespace
in /Users/ven/Library/Python/2.7/lib/python/site-packages/_mysql.so
正如你可以看到我使用的家當行32位的蟒蛇,因爲我只需要在32位與wxpython工作它運行。現在,具有與32位蟒問題的唯一包是已經使用安裝在MySQLdb:
pypm install mysql-python
如果我只是刪除從上述片的代碼行
import MySQLdb,它運行完美並輸出「你好,世界」。
如果我從shebang行中刪除了「arch -i386」,則wxpython包不起作用。我想同時使用wxpython和MySQLdb。我該怎麼做?
根據www.wxpython.org 64位版本的wxpython可用於Mac。 – 2011-05-06 15:11:35