Mac OS X 10.8 XCODE5.2环境下安装python-MySQLdb问题

许多人都推荐Mac电脑,说高效,打算这台电脑性能跟不上的时候买台RMBP,以前用过一段时间朋友的Mac电脑,很难用,现在想着以后要换,就现在Vmware里安装Mac OS吧,熟悉一下。

今天因为学习python,需要和数据库交互,就打算在Mac OS下安装一下MySQL,安装这个比较顺利,但是Mac自带的python没有MySQLdb,需要重新安装,遇到了很多麻烦,总结记录一下。

安装python-mysqldb有两种方法:

1、联网下载,使用sudo easy_install mysql-python命令安装,但是基本上不会成功的,原因有两个:一是找不到mysql_config位置,二是现在基本上安装的是64位的系统和64位的python,和默认的32位安装包冲突。我在尝试的时候是找不到mysql_config位置。

2、手动安装,去http://sourceforge.net/projects/mysql-python/files/下载,解压后修改site.cfg:将mysql_config注释取消并将路径更改为mysql安装路径:
[sourcecode language="Python"]
mysql_config = /usr/local/mysql/bin/mysql_config
[/sourcecode]


然后执行
[sourcecode language="Python"]
python setup.py install
[/sourcecode]

但是报错,

2014-06-13_224918

网上有的的资料说是去Xcode的Preference的Download下的Components下载command line tool
我下载后执行还是报那个错误,查了一下说是
mac os的Xcode从5.1起给编译器规定对于未知参数传入视为error,我们需要使用ARCHFLAGS将该error降级为warning,因此最后的安装命令应该如下:
[sourcecode language="Python"]
sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future python setup.py install
[/sourcecode]

此时安装没有报错,但是执行

python

进入python环境执行
[sourcecode language="Python"]
import MySQLdb
[/sourcecode]
报以下错误:

Traceback (most recent call last):
  File "./b", line 26, in 
    import MySQLdb
  File "/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/MySQLdb/__init__.py", line 19, in 
    import _mysql
ImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so, 2): no suitable image found.  Did find:
	/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so: mach-o, but wrong architecture

解决方法是:需要解决动态引入的问题了(重新做一遍,重新编译)
[sourcecode language="Python"]
python setup.py clean
sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future python setup.py build
sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future python setup.py install
[/sourcecode]

终端进python
[sourcecode language="Python"]
import MySQLdb
[/sourcecode]
还会报一个错误,

image not

这是因为没有设置环境变量,

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib:$DYLD_LIBRARY_PATH

然后就好了

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇