【发布时间】:2011-09-08 06:56:29
【问题描述】:
所以我知道这不是一个新话题,但似乎没有人能够解决它,至少对于 Python 2.6 / Snow Leopard 来说不是。 (我发现的 Leopard 修复不适用于 Snow Leopard。)
情况:我正在尝试在我的 Mac OS X Snow Leopard 笔记本电脑上本地安装 Django。 (10.6.7) 我有 Python 2.6.1,它预装了 Snow Leopard、MySQL-python 1.2.3 和 MAMP 1.9.6。都是最新的当前版本。
如果不对 MySQLdb 包进行任何更改,如果我运行 python setup.py build 我会收到数百个或更多错误,其中第一个是:
$ python setup.py build
running build
running build_py
copying MySQLdb/release.py -> build/lib.macosx-10.6-universal-2.6/MySQLdb
running build_ext
building '_mysql' extension
creating build/temp.macosx-10.6-universal-2.6
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch ppc -arch x86_64 -pipe -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/Applications/MAMP/Library/include -I/System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6 -c _mysql.c -o build/temp.macosx-10.6-universal-2.6/_mysql.o -fno-omit-frame-pointer -g
_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.c:76: error: expected specifier-qualifier-list before 'MYSQL'
_mysql.c:90: error: expected specifier-qualifier-list before 'MYSQL_RES'
并以:
结尾_mysql.c:2422: error: initializer element is not constant
_mysql.c:2422: error: (near initialization for '_mysql_ResultObject_memberlist[0].offset')
_mysql.c: In function '_mysql_ConnectionObject_getattr':
_mysql.c:2444: error: '_mysql_ConnectionObject' has no member named 'open'
lipo: can't open input file: /var/folders/Br/Br8Yhf-IGVCaGfXw4TYRc++++TI/-Tmp-//ccFnIslh.out (No such file or directory)
error: command 'gcc-4.2' failed with exit status 1
所以我用 mysql_config 的位置更新了我的site.cfg 文件:
# The path to mysql_config.
# Only use this if mysql_config is not on your PATH, or you have some weird
# setup that requires it.
mysql_config = /Applications/MAMP/Library/bin/mysql_config
还是同样的错误。过去两天我一直在进行故障排除,所以我做了一大堆其他事情(包括ez_setup、下载 .egg 文件以及手动更改代码中的一些选项),但没有一个产生任何结果不同的结果,所以我不会对所有细节感到厌烦。总的来说,我可能会遗漏一些明显的东西,谁知道呢? (希望)。 Python 和 MySQL 都可以正常工作,所以我没有做过并且试图避免的一件事是不通过 MAMP 重新安装 MySQL。但如果有人有理由相信这是必要的,我会尝试一下。
任何帮助将不胜感激!谢谢。
【问题讨论】:
-
不,根本没有
/Applications/MAMP/Library/include目录(显然不存在的目录中没有文件)。我怎么知道那里应该有什么以及在哪里可以获得这些文件?谢谢。
还有:$ /Applications/MAMP/Library/bin/mysql_config --include -I/Applications/MAMP/Library/include -
MAMP目录下的任何地方都没有mysql.h文件,我Spotlight搜索了mysql.h,唯一的结果是_mysql.c文件在这里查找并抛出错误。我在故障排除中假设 mysql.h 应该是 MySQLdb python 包的一部分,但我猜不是——它应该是 MAMP 的一部分?无论哪种方式,我都没有该名称的文件。运行
/Applications/MAMP/Library/bin/mysql_config --include打印-I/Applications/MAMP/Library/include。谢谢!
标签: django macos installation python-2.6 mysql-python