请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

续:在mac下安装mysqlclient报错 (试过各种解决方案后)

起初报错如下:

https://img1.sycdn.imooc.com//szimg/5b1669910001704623921374.jpg


尝试如下解决方案:

  1. 安装python3.6.5

  2. 使用新命令:pip3 intstall mysqlclient

  3. 升级pip和pip3 工具到最新版本

  4. 安装xcode,安装Command_Line_Tools_macOS_10.13_for_Xcode_9.4 (以为是“gcc”问题)


但是仍然报错如下:

https://img1.sycdn.imooc.com//szimg/5b166a8e0001d45925281600.jpg


最后一段摘录(

  typedef void(*Udf_func_any)();

                               ^

                                void

    _mysql.c:1894:3: error: use of undeclared identifier 'my_bool'

                    my_bool recon = reconnect;

                    ^

    _mysql.c:1895:58: error: use of undeclared identifier 'recon'

                    mysql_options(&self->connection, MYSQL_OPT_RECONNECT, &recon);

                                                                           ^

    1 warning and 2 errors generated.

    error: command 'gcc' failed with exit status 1


个人分析排查: gcc我已经正确安装,command 'gcc' 是failed  不是command not exist

问题应该在上面两段,但是网上查不到类似情况。


与这个问题已经斗争一天了,不解决这个问题没发继续学下去

再次求助老师

正在回答 回答被采纳积分+3

3回答

提问者 卡西法 2018-06-06 13:53:56

已解决。


1.卸载Mac自带的python2.7

2.重新安装python官方的2.7版本

3.安装python3.6.5 

4.在Mac命令行中输入sudo vi ~/.bashrc  (前提是已安装sudo命令)

提示输入本机密码,输入后出现如下代码:

“alias python2='/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7'

alias python3='/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6'

alias python=python3”

末尾的“alias python=python3”是环境变量更改语句,“=”后面是要更改成的python版本,我这里是使用python3.(也可以使用python2)

5.在mac命令行中输入 pip install mysqlclient,提示安装成功,结束!


ps:

后来了解这个问题是mac自带python2.7存在bug导致,仅仅安装python3不管用,就得卸载自带pythoy2重装官方版。


以上感谢java工程师suyear,远程帮我排查问题到凌晨1点多,不然我的python之路可能就从入门到放弃了。

宣传下suyear的博客:https://segmentfault.com/u/enue 

同时感谢NavCat老师,耐心给出了多项解决方案,再次鸣谢。




2 回复 有任何疑惑可以回复我~
  • NavCat #1
    加油,我们一起进步
    回复 有任何疑惑可以回复我~ 2018-06-06 14:13:32
NavCat 2018-06-05 22:28:27

或者使用PyMySQL试试

https://pypi.org/project/PyMySQL/


0 回复 有任何疑惑可以回复我~
  • 提问者 卡西法 #1
    已解决,可以安装mysqlclient,感谢老师。
    回复 有任何疑惑可以回复我~ 2018-06-06 13:56:55
NavCat 2018-06-05 22:26:55

直接 import MySQLdb 会报错吗

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信