mac 安装 python mysqlclient 遇到的问题及解决方法

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

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

brew install mysql-connector-c

pip3 install mysqlclient

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

复制代码
➜ /usr/local/Cellar/mysql-connector-c/6.1.11/bin >pip3 install mysqlclient
Collecting mysqlclient
  Using cached mysqlclient-1.3.12.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/2w/56bgkvqd1xldl56fx_gx_fg00000gn/T/pip-build-f9admsgv/mysqlclient/setup.py", line 17, in <module>
        metadata, options = get_config()
      File "/private/var/folders/2w/56bgkvqd1xldl56fx_gx_fg00000gn/T/pip-build-f9admsgv/mysqlclient/setup_posix.py", line 54, in get_config
        libraries = [dequote(i[2:]) 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 54, in <listcomp>
        libraries = [dequote(i[2:]) 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 12, in dequote
        if s[0] in "\"'" and s[0] == s[-1]:
    IndexError: string index out of range

    ----------------------------------------
复制代码

解决方案:mysql_config                                                 (bin)

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

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

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

复制代码
➜ /usr/local/Cellar/mysql-connector-c/6.1.11/bin >pip3 install mysqlclient
Collecting mysqlclient
  Using cached mysqlclient-1.3.12.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/60/bf7c315cbe163515db1c846e4ffa5557dd785c82e82f3492e8
Successfully built mysqlclient
Installing collected packages: mysqlclient
Successfully installed mysqlclient-1.3.12
复制代码

 

猜你喜欢

转载自www.cnblogs.com/yucaikang/p/9584508.html