天天看点

Mac OS下安装mysqlclient

最近自己使用Mac 环境迁移了一个Python开发项目,运行时说缺mysqlclient,安装时缺报了错,通过各种解决方法开始填坑(菜鸟我花了3天)最终还是在 https://www.jianshu.com/p/80f3f07f834c.中找到了解决方法,这里记录一下,也让遇到同样问题的朋友快速解决。

首先,需要安装mysql,并依赖openssl,这个就不说了,直接官网下载mysql安装包无脑安装就好了

这时,你想试一下安装mysqlclient,于是通过pip进行安装尝试:

pip3 install mysqlclient
           

这时你会得到一个错误:

?Command “python setup.py egg_info” failed with error code 1 in /private/var/folders/0h/jn4vphd94wsf0sl01jb74p200000gn/T/pip-build-75a5emrb/mysqlclient/

别急,照着步骤做:

通过brew安装 mysql-connector-c

brew install mysql-connector-c
           

安装后你可以找到mysql_config这个源文件,

1.找到文件所在位置

which mysql_config
           
/usr/local/bin/mysql_config

2.打开文件并编辑

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,又出现另一个错误(我是在这儿卡住的)

Command “/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 -u -c “import setuptools, tokenize;file=’/private/var/folders/0h/jn4vphd94wsf0sl01jb74p200000gn/T/pip-build-7dif93uz/mysqlclient/setup.py’;f=getattr(tokenize, ‘open’, open)(file);code=f.read().replace(’\r\n’, ‘\n’);f.close();exec(compile(code, file, ‘exec’))” install --record /var/folders/0h/jn4vphd94wsf0sl01jb74p200000gn/T/pip-ljzyp5xt-record/install-record.txt --single-version-externally-managed --compile” failed with error code 1 in /private/var/folders/0h/jn4vphd94wsf0sl01jb74p200000gn/T/pip-build-7dif93uz/mysqlclient/
Mac OS下安装mysqlclient
这是后边的错误信息,,我一直在搞gcc,浪费了很长的时间。

不要急,这时因为没有openssl环境变量,继续输入命令(我是在这儿卡住的):

最后,再次安装mysqlclient

pip3 install mysqlclient
           

你会看到

Collecting mysqlclient

Using cached mysqlclient-1.3.12.tar.gz

Installing collected packages: mysqlclient

Running setup.py install for mysqlclient … done

Successfully installed mysqlclient-1.4.4

done!

本文转自

链接: https://www.jianshu.com/p/80f3f07f834c.