Python mac安装mysqlclient的一个bug

这是一个来自mysql官方的bug,反正我是看不懂。

shuais-MBP:wxapp dandyzhang$ pipenv install mysqlclient
Installing mysqlclient...
Collecting mysqlclient
Using cached https://files.pythonhosted.org/packages/ec/fd/83329b9d3e14f7344d1cb31f128e6dbba70c5975c9e57896815dbb1988ad/mysqlclient-1.3.13.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/rw/kmt8v6lj2fb37k0kh1ggm4m40000gn/T/pip-install-rwvfazf6/mysqlclient/setup.py", line 18, in <module>
metadata, options = get_config()
File "/private/var/folders/rw/kmt8v6lj2fb37k0kh1ggm4m40000gn/T/pip-install-rwvfazf6/mysqlclient/setup_posix.py", line 60, in get_config
libraries = [dequote(i[2:]) for i in libs if i.startswith('-l')]
File "/private/var/folders/rw/kmt8v6lj2fb37k0kh1ggm4m40000gn/T/pip-install-rwvfazf6/mysqlclient/setup_posix.py", line 60, in <listcomp>
libraries = [dequote(i[2:]) for i in libs if i.startswith('-l')]
File "/private/var/folders/rw/kmt8v6lj2fb37k0kh1ggm4m40000gn/T/pip-install-rwvfazf6/mysqlclient/setup_posix.py", line 13, in dequote
raise Exception("Wrong MySQL configuration: maybe https://bugs.mysql.com/bug.php?id=86971 ?")
Exception: Wrong MySQL configuration: maybe https://bugs.mysql.com/bug.php?id=86971 ? ---------------------------------------- Error: An error occurred while installing mysqlclient!
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/rw/kmt8v6lj2fb37k0kh1ggm4m40000gn/T/pip-install-rwvfazf6/mysqlclient/ This is likely caused by a bug in mysqlclient. Report this to its maintainers.

mysqlclient的作者在源码里已经写了个exception是专门针对这个报错的,就是上面加粗的那一句黑色的链接

Wrong MySQL configuration: maybe https://bugs.mysql.com/bug.php?id=86971 ?

它说,错误的mysql配置,可能是链接里的问题。

这里就不打开链接了解释了,反正就是一个官方的bug,里面也写了怎么解决。

首先安装mysql-connector

brew install mysql-connector-c

然后修改一下mysql_config文件,当然基于安全性的考虑需要先备份一下文件

cp /usr/local/bin/mysql_config /usr/local/bin/mysql_config.backup 

然后修改文件

sudo vim /usr/local/bin/mysql_config 

找到对应的内容位置

# Create options
libs="-L$pkglibdir"
libs="$libs -l "
修改成
# Create options
libs="-L$pkglibdir"
libs="$libs -lmysqlclient -lssl -lcrypto"

这时候安装mysqlclient就没问题了。。

上一篇:CentOS6.5_64bit下编译安装MySQL-5.6.23


下一篇:CentOS 下编译安装MySQL