在 mac 上安装 mysqlclient 遇到了一些问题,查找资料很多人都遇到了同样的问题。通过资料和试验,成功了。这里记录一下,希望帮到遇到同样问题的人。

本人使用python3, 安装步骤如下:

brew install mysql-connector-c

pip3 install mysqlclient

当执行 pip3 install mysqlclient 是出现错误:

➜ /usr/local/Cellar/mysql-connector-c/6.1./bin >pip3 install mysqlclient
Collecting mysqlclient
Using cached mysqlclient-1.3..tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line , in <module>
File "/private/var/folders/2w/56bgkvqd1xldl56fx_gx_fg00000gn/T/pip-build-f9admsgv/mysqlclient/setup.py", line , in <module>
metadata, options = get_config()
File "/private/var/folders/2w/56bgkvqd1xldl56fx_gx_fg00000gn/T/pip-build-f9admsgv/mysqlclient/setup_posix.py", line , in get_config
libraries = [dequote(i[:]) for i in libs if i.startswith('-l')]
File "/private/var/folders/2w/56bgkvqd1xldl56fx_gx_fg00000gn/T/pip-build-f9admsgv/mysqlclient/setup_posix.py", line , in <listcomp>
libraries = [dequote(i[:]) for i in libs if i.startswith('-l')]
File "/private/var/folders/2w/56bgkvqd1xldl56fx_gx_fg00000gn/T/pip-build-f9admsgv/mysqlclient/setup_posix.py", line , in dequote
if s[] in "\"'" and s[] == s[-]:
IndexError: string index out of range ----------------------------------------

解决方案:mysql_config

执行:vim mysql_config,搜索 libs,或者114行,替换为115行即可

 # Create options
libs="-L$pkglibdir"
#libs="$libs -l " ##源代码
libs="$libs -lmysqlclient -lssl -lcrypto " ##修改成这样

再次执行pip3 install mysqlclient,成功了。如下所示:

➜ /usr/local/Cellar/mysql-connector-c/6.1./bin >pip3 install mysqlclient
Collecting mysqlclient
Using cached mysqlclient-1.3..tar.gz
Building wheels for collected packages: mysqlclient
Running setup.py bdist_wheel for mysqlclient ... done
Stored in directory: /Users/kk/Library/Caches/pip/wheels/df/bb//bf7c315cbe163515db1c846e4ffa5557dd785c82e82f3492e8
Successfully built mysqlclient
Installing collected packages: mysqlclient
Successfully installed mysqlclient-1.3.

mac 安装 python mysqlclient 遇到的问题及解决方法的更多相关文章

  1. win安装python模块出现依赖问题的解决方法 & No module named 'MySqldb'

    前言 一年多了,还在写这种问题,羞愧. 新公司不让用自己的电脑,配的winPC,项目启不起来,之前也出现过这个问题,是py3缺少某个模块,但是自己没记,这次记一下好了. No module named ...

  2. Mac安装软件时提示已损坏的解决方法

    问题描述 最近安装从网上下载的软件,安装完之后打开提示xxx已损坏,打不开,软件无法打开. 其实,这是新系统(macOS Sierra 10.12.X)新安全机制的锅,它默认不允许用户自行下载安装应用 ...

  3. 安装Python的机器学习包Sklearn 出错解决方法

    1 首先须要安装Cython.网上下载后进行本地安装 python setup.py install 2 下载Sklearn包,https://pypi.python.org/pypi/scikit- ...

  4. Mac安装软件时 提示已损坏的解决方法

    进入终端: sudo spctl --master-disable

  5. python使用pip安装第三方模块遇到的问题及解决方法

    python使用pip安装第三方模块遇到的问题及解决方法 关注公众号"轻松学编程"了解更多. 使用国内源: 清华:https://pypi.tuna.tsinghua.edu.cn ...

  6. Mac下新安装的MySQL无法登陆root用户解决方法

      一 设置MySQL命令行搜索路径 0.苹果->系统偏好设置->最下边点mysql 在弹出页面中 启动mysql服务 1.打开终端,输入: sudo vi ~/.bash_profile ...

  7. python3.4学习笔记(十九) 同一台机器同时安装 python2.7 和 python3.4的解决方法

    python3.4学习笔记(十九) 同一台机器同时安装 python2.7 和 python3.4的解决方法 同一台机器同时安装 python2.7 和 python3.4不会冲突.安装在不同目录,然 ...

  8. [转载]关于安装Android Studio的一些问题的解决方法

    最近在研究Android编程,在Android Studio安装和使用时遇到了麻烦,从园子里找到了<关于安装Android Studio的一些问题的解决方法>的,很多问题找到了解决办法. ...

  9. windows8 8.1 安装完 ubuntu无法挂载 ntfs分区 解决方法

    windows8 8.1 安装完 ubuntu无法挂载 ntfs分区 解决方法: 最近安装完发现8.1系统后,ubuntu无法加载以前的ntfs分区了,特别是我添加到了/etc/fstab里面了 导致 ...

随机推荐

  1. kepware http接口 javascript开发

    读取某变量的值(jquery var settings = { "async": true, "crossDomain": true, "url&qu ...

  2. MessageFormat.format()和String.format()

    MessageFormat 提供了以与语言无关方式生成连接消息的方式.使用此方法构造向终端用户显示的消息. MessageFormat 获取一组对象,格式化这些对象,然后将格式化后的字符串插入到模式中 ...

  3. Hdu1281 棋盘游戏

    棋盘游戏 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi ...

  4. 三种初步简易的方法求解数值问题 of C++

    1. “二分法解方程” 在二分法中,从区间[a,b]开始,用函数值f(a)与f(b)拥有相反的符号.如果f在这个区间连续,则f的图像至少在x=a,x=b之间穿越x轴一次,因此方程f(x)=0在[a,b ...

  5. unigui1404在delphi10.2.2安装

    unigui1404在delphi10.2.2安装 UNIGUI1404不能直接在DELPHI10.2.2下面编译安装,在10.2.1下面是可以的. 这里讲下怎样安装的方法: 1)执行FMSoft_u ...

  6. Excel中单元格、超级链接形成超级链接单元格

    使用函数 HYPERLINK(超链接,显示文字) =HYPERLINK("http://www.cnblogs.com/Vpygamalion/","李汉超") ...

  7. 【转】dlgdata.cpp line 40 断言失败

    原文网址:http://blog.csdn.net/onlyou930/article/details/6384075 在VS2010 运行一个C++ 程序,出现下图错误: 一看到这个,我头都大了.关 ...

  8. NLog配置JsonLayout中文输出为unicode问题

    日志输出现要改为json格式,网上查询layout配置为JsonLayout就可以了,结果发现输出中文为unicode编码,看很多文章说配置encode="false"就可以了,结 ...

  9. ipad协议

    getLoginQRCode (获取登录二维码)CheckLoginQRCode(检测扫码状态)ManualAuth(扫码登录)ManualAuth(62数据登录)ManualAuth(账号密码登录) ...

  10. C#中类的属性的获取

    /// <summary> /// 将多个实体转换成一个DataTable /// </summary> /// <typeparam name="T" ...