0

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

誰もこのエラーを見たことがありますか?

4

2 に答える 2

3

簡単なグーグル検索でこの答えが得られました:

ヒョウで mysqldb を動作させるには、_mysql.c を編集して次の行を編集する必要があることがわかりました。

#ifndef uint
#define uint unsigned int
#endif     

また、site.cfg を編集してスレッドセーフを False に設定する必要がありました。

これを行った後、MySQLdb をインストールすることができました。それほど速くはありませんが、さらに別の問題がありました。

参照元: .../_mysql.so 理由: イメージが見つかりません

ソリューション:

sudo ln -s /usr/local/mysql/lib/ /usr/local/mysql/lib/mysql
于 2011-03-08T00:31:22.013 に答える
0

エラーが示すように、物事が再定義されました。過去に、ビルド中のライブラリのソースにある問題のある宣言をコメントアウトすることで、これを回避しました。ただし、その解決策にはいくつかの明らかな問題があります...

于 2011-03-08T00:24:46.227 に答える