【发布时间】:2011-03-18 04:05:26
【问题描述】:
我在尝试在雪豹上安装 MySQLdb (1.2.2) 时遇到了各种麻烦。我正在运行 python 2.5.1 和 MySQL 5.1 32bit。
Python 和 MySQL 运行良好。
我还安装了 django 1.2.1,虽然我认为这并不重要,但我想了解一下我正在尝试安装的堆栈。我正在使用 python 2.5.x,因为我的虚拟主机只有该版本作为选项,我希望尽可能接近我的生产环境。
无论如何...
在关注了许多提到修改 _mysql.c 和 setup_posix.py 等的现有文章和教程之后,我仍然遇到了麻烦。
这是我的堆栈跟踪:
xxxxxxx-mbp:MySQL-python-1.2.2 xxxxxxx$ sudo ARCHFLAGS="-arch x86_64" python setup.py build 运行构建 运行 build_py 创建构建 创建 build/lib.macosx-10.3-i386-2.5 复制 _mysql_exceptions.py -> build/lib.macosx-10.3-i386-2.5 创建 build/lib.macosx-10.3-i386-2.5/MySQLdb 复制 MySQLdb/init.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb 复制 MySQLdb/converters.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb 复制 MySQLdb/connections.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb 复制 MySQLdb/cursors.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb 复制 MySQLdb/release.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb 复制 MySQLdb/times.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb 创建 build/lib.macosx-10.3-i386-2.5/MySQLdb/constants 复制 MySQLdb/constants/init.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb/constants 复制 MySQLdb/constants/CR.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb/constants 复制 MySQLdb/constants/FIELD_TYPE.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb/constants 复制 MySQLdb/constants/ER.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb/constants 复制 MySQLdb/constants/FLAG.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb/constants 复制 MySQLdb/constants/REFRESH.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb/constants 复制 MySQLdb/constants/CLIENT.py -> build/lib.macosx-10.3-i386-2.5/MySQLdb/constants 运行 build_ext 构建“_mysql”扩展 创建 build/temp.macosx-10.3-i386-2.5 gcc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -fno-common -dynamic -DNDEBUG -g -O3 - Dversion_info=(1,2,2,'final',0) -D__version__=1.2.2 -I/usr/local/mysql-5.1.48-osx10.6-x86/include -I/Library/Frameworks/Python.框架/版本/2.5/include/python2.5 -c _mysql.c -o build/temp.macosx-10.3-i386-2.5/_mysql.o -g -Os -arch i386 -fno-common -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DIGNORE_SIGHUP_SIGQUIT -DDONT_DECLARE_CXA_PURE_VIRTUAL 在 /Developer/SDKs/MacOSX10.4u.sdk/usr/include/wchar.h:112 包含的文件中, 来自/Library/Frameworks/Python.framework/Versions/2.5/include/python2.5/unicodeobject.h:118, 来自/Library/Frameworks/Python.framework/Versions/2.5/include/python2.5/Python.h:83, 来自 pymemcompat.h:10, 从 _mysql.c:29: /Developer/SDKs/MacOSX10.4u.sdk/usr/include/stdarg.h:4:25:错误:stdarg.h:没有这样的文件或目录 在 _mysql.c:35 包含的文件中: /usr/local/mysql-5.1.48-osx10.6-x86/include/my_config.h:1062:1:警告:“HAVE_WCSCOLL”重新定义 在 /Library/Frameworks/Python.framework/Versions/2.5/include/python2.5/Python.h:8 包含的文件中, 来自 pymemcompat.h:10, 从 _mysql.c:29: /Library/Frameworks/Python.framework/Versions/2.5/include/python2.5/pyconfig.h:724:1:警告:这是之前定义的位置 错误:命令“gcc”失败,退出状态为 1
有人有什么想法吗?
【问题讨论】:
-
您可能想试试MacPorts。卸载现有的 MySQL 安装,然后执行
sudo port install mysql5-server-devel python25 py25-mysql。它将告诉您如何在安装结束时设置新的 MySQL 服务器。您还需要确保您使用的是 MacPorts Python 安装而不是您的系统安装(您可以为此使用 python-select)。