繁体   English   中英

安装MySQL_python 1.2.2时出现GCC错误(Mac OS 10.6 Snow Leopard)

[英]GCC error when installing MySQL_python 1.2.2 (Mac OS 10.6 Snow Leopard)

我正在尝试在Snow Leopard上安装MySQL_python 1.2.2(我特别需要此版本,而不是当前的1.2.3),并在下面收到此错误。

要安装的命令:

pip install -Iv http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.2/MySQL-python-1.2.2.tar.gz/download

并且部分跟踪:

copying MySQLdb/constants/CLIENT.py -> build/lib.macosx-10.6-universal-2.6/MySQLdb/constants

running build_ext

building '_mysql' extension

creating build/temp.macosx-10.6-universal-2.6

/usr/bin/gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -pipe -Dversion_info=(1,2,2,'final',0) - D__version__=1.2.2 -I/usr/local/mysql/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 -g -Os -arch x86_64 -fno-common -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DIGNORE_SIGHUP_SIGQUIT -DDONT_DECLARE_CXA_PURE_VIRTUAL

In file included from _mysql.c:35:

/usr/local/mysql/include/my_config.h:1053:1: warning: "HAVE_WCSCOLL" redefined

In file included from /System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6/Python.h:8,

             from pymemcompat.h:10,

             from _mysql.c:29:

/System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6/pyconfig.h:803:1: warning: this is the location of the previous definition

In file included from /usr/local/mysql/include/mysql.h:47,

             from _mysql.c:40:

/usr/include/sys/types.h:92: error: duplicate ‘unsigned’

/usr/include/sys/types.h:92: error: two or more data types in declaration specifiers

error: command '/usr/bin/gcc-4.2' failed with exit status 1

有没有人见过这个错误?

快速谷歌搜索产生了这个答案

为了让mysqldb在leopard上工作,我发现我必须编辑_mysql.c并编辑出这些行:

 #ifndef uint #define uint unsigned int #endif 

我还必须编辑site.cfg并将threadsafe标记为False。

这样做之后,我设法安装了MySQLdb,太棒了! 没那么快,还有另一个问题:

引用自:... / _ mysql.so原因:未找到图像

解决方案:

 sudo ln -s /usr/local/mysql/lib/ /usr/local/mysql/lib/mysql 

正如错误所说,事情已被重新定义。 我在过去通过评论正在构建的库的源代码中的违规声明来解决这个问题。 然而,该解决方案存在一些明显的问

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM